合計 昨日 今日

アバター
Dixq (管理人)
管理人
 
記事: 1514
登録日時: 2010年10月12日(火) 20:16
お住まい: 北海道札幌市
日記: 日記を見る (566)
日記
- 10月 2017
#プログラマ狩り (15)
   2017年10月12日(木) 21:25

+ 9月 2017
+ 8月 2017
+ 7月 2017
+ 6月 2017
+ 5月 2017
+ 4月 2017
+ 3月 2017
+ 2月 2017
+ 1月 2017
+ 12月 2016
+ 11月 2016
+ 10月 2016
+ 9月 2016
+ 8月 2016
+ 7月 2016
+ 6月 2016
+ 5月 2016
+ 4月 2016
+ 3月 2016
+ 2月 2016
+ 1月 2016
+ 12月 2015
+ 11月 2015
+ 10月 2015
+ 9月 2015
+ 8月 2015
+ 7月 2015
+ 6月 2015
+ 5月 2015
+ 4月 2015
+ 3月 2015
+ 2月 2015
+ 1月 2015
+ 12月 2014
+ 11月 2014
+ 10月 2014
+ 9月 2014
+ 8月 2014
+ 7月 2014
+ 6月 2014
+ 5月 2014
+ 4月 2014
+ 3月 2014
+ 2月 2014
+ 1月 2014
+ 12月 2013
+ 11月 2013
+ 10月 2013
+ 9月 2013
+ 8月 2013
+ 7月 2013
+ 6月 2013
+ 5月 2013
+ 4月 2013
+ 3月 2013
+ 2月 2013
+ 1月 2013
+ 12月 2012
+ 11月 2012
+ 10月 2012
+ 9月 2012
+ 8月 2012
+ 7月 2012
+ 6月 2012
+ 5月 2012
+ 4月 2012
+ 3月 2012
+ 2月 2012
+ 1月 2012
+ 12月 2011
+ 11月 2011
+ 10月 2011
+ 9月 2011
+ 8月 2011
+ 7月 2011
+ 6月 2011
+ 5月 2011
+ 4月 2011
+ 3月 2011
+ 2月 2011
+ 1月 2011
+ 12月 2010
+ 11月 2010
+ 10月 2010
フォロー
カテゴリー
日常
1 記事
フィード
1つ前へ次へ

納車!!

パーマリンクby Dixq (管理人) on 2017年6月10日(土) 17:10

ついに新車セレナ納車!新車購入人生初でもう感動!!
DSC02042.JPG
DSC02042.JPG (2.88 MB) 表示数: 31 回

車のキーも家のキーも、キーホルダーがもう何も"キー"の形をしていませんw
.jpg
.jpg (2.43 MB) 表示数: 23 回
添付ファイル

コメント数: 8 閲覧数: 2774

四聖龍神録2クローズドβテスト開始

パーマリンクby Dixq (管理人) on 2017年6月01日(木) 00:07

昨日より始まりました、四聖龍神録2クローズドβテスト。
記念すべきv0.0.0をリリースしました。
もうPC見過ぎて目がしょぼしょぼします。
公式公開まで後1ヶ月、頑張るぞ!

コメント数: 0 閲覧数: 2567

アメリカに着きました

パーマリンクby Dixq (管理人) on 2017年5月17日(水) 08:22

来ちゃいましたよ、U・S・A!
シリコンバレーとかテレビでしか見たことなかった(?_?;

現地の人がWelcomeで4時間位ずっと話してました!
案外ジョークで笑ったりできて楽しい(笑)
添付ファイル
images.jpg
images.jpg (30.54 KB) 表示数: 740 回

コメント数: 7 閲覧数: 3911

新車購入しました!

パーマリンクby Dixq (管理人) on 2017年5月07日(日) 18:40

人生で初めての新車です!
20172224.jpg
20172224.jpg (118.84 KB) 表示数: 31 回

自動で車庫入れしてくれるとか、アラウンドモニターとか欲しかった機能が満載!
納車が楽しみです!
添付ファイル
最後に編集したユーザー Dixq (管理人) [ 2017年5月14日(日) 23:01 ], 累計 2 回

コメント数: 4 閲覧数: 3696

改竄されない変数の作り方

パーマリンクby Dixq (管理人) on 2017年5月04日(木) 03:16

龍神録でお金の金額を改竄されるので
http://dixq.net/g/h_10.html
変数を常に排他的論理和でXOR暗号化していました。
しかしそれだけでは突破されてしまいました。

なので今回はint型の代わりにEncryptedIntで変数を保持するようにしました。
EncryptedIntクラスの中身はこのようになっています。
演算子オーバーロード部は省略していますが、普通のint型と同じように使えます。

ただし変数に値を代入するたびに変数のアドレスが変わりますので改竄を難しくしてあり
リンク先のような「スペシャルねこまんま57号」で値を絞っていくような方法には効果的だと思っています。

コード[C++]: 全て選択
1
2
3
4
5
6
7
8
9
#pragma once
class EncryptedInt
{
    int* value;
public:
    EncryptedInt();
    void set(int value);
    int  get();
};

コード[C++]: 全て選択
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include "EncryptedInt.h"
#include <DxLib.h>
 
const static int KEY = 0x0123'4567'89AB'CDEF; //XOR暗号キー'
 
EncryptedInt::EncryptedInt()
{
    value = new int;
    *value = 0 ^ KEY;
}
 
EncryptedInt::~EncryptedInt()
{
    delete value;
}
 
void EncryptedInt::set(int v)
{
    int n = GetRand(3000); //適当にnew繰り返す分
    int** pool = new int*[n];
 
    int tmp = *value;
 
    for (int i = 0; i<n; i++) {
        pool[i] = new int;
    }
 
    delete value;
    value = new int;
    *value = v ^ KEY;
 
    for (int i = 0; i<n; i++) {
        delete pool[i];
    }
    delete[] pool;
}
 
int EncryptedInt::get()
{
    return (*value) ^ KEY;
}


思いつきではこれくらいですが、演算子オーバーロードして普通のint型として使えるようにしておけば
改竄されたくない値は全部これ使えばいいってことになりますね。
で、安全性を高めたいんですが、もっと解析が困難になる方法ありませんかね?
最後に編集したユーザー Dixq (管理人) [ 2017年5月04日(木) 03:17 ], 累計 1 回

コメント数: 9 閲覧数: 4549

オンラインデータ

登録ユーザー: なし