Mais conteúdo relacionado
Semelhante a mmoの作り方 (20)
mmoの作り方
- 18. データベース
MySQL
● ローカルからのみアクセス可能に設定
● アカウント登録はemailとパスワードを登録する。
● パスワードは流出時を考え、 sha256二重で保存
● 文字コードはutf8_binなど照合順序をちゃんと考えよう
18
//ユーザー情報テーブル
CREATE TABLE user_data(
`user_id` int(10) unsigned NOT NULL,
`email` varchar(256) NOT NULL,
`password` varchar(256) NOT NULL,
`name` varchar(40) NOT NULL ,
PRIMARY KEY (`user_id`));
//モデル情報テーブル
CREATE TABLE model_data(
`model_id` int(10) unsigned NOT NULL,
`user_id` int(10) unsigned,
`model_name` varchar(40),
`model_file_pash` varchar(256),
`model_file_name` varchar(256),
`model_type` TINYINT,
PRIMARY KEY (`model_id`));
//マップ情報テーブル
CREATE TABLE map_data(
`map_id` int(10) unsigned NOT NULL,
`model_id` int(10) unsigned NOT NULL,
`object_name` varchar(40),
`position` float(15,6),
`rotate` float(15,6),
`scale` float(15,6),
PRIMARY KEY (`map_id`));
テーブル構成
- 19. セキュリティ
暗号化
● 通信内容の暗号化に 128bit AES CFB を使用
● AES鍵交換時には 4096bit RSA を使用
● 通信開始時にサーバーから公開鍵をランダムで作成し送信。
● 署名を発行し、中間者攻撃以外には対応
Dos対策
● 一定時間でデータ量が規定値を超えるとコマンド無視
● さらに座標値をチェックし、不正な移動の場合は座標初期化
● ログイン時は3回間違えたら切断
19