暗号化

ActiveBasicでのプログラミングでわからないこと、困ったことなどがあったら、ここで質問してみましょう(質問を行う場合は、過去ログやWeb上であらかじめ問題を整理するようにしましょう☆)。
返信する
メッセージ
作成者
TISAproject
記事: 62
登録日時: 2016年9月24日(土) 15:35

暗号化

#1 投稿記事 by TISAproject »

http://orios.s151.xrea.com/activebasic/ ... 1-5-3.html
これを利用して、

コード: 全て選択


Dim Buffer As BytePtr
Buffer = "なにぬねの"
Dim key As Long
key = 152
' 暗号化
crypt = String$(Len(Buffer), Chr$(0))
For i = 0 To Len(crypt) - 1
    ' 文字コードにパスワードの数字を足して暗号化データを作る
    crypt = (Buffer + key) Mod 256
Next


でいったん暗号化し、
crypt の暗号化を戻す過程で、

コード: 全て選択


Dim Mkey As Long
	Mkey = -1 * key
' 暗号化
crypt = String$(Len(nam), Chr$(0))
For i = 0 To Len(crypt) - 1
    '暗号化データを戻す
    crypt = (nam + key) Mod 256
Next

で、なぜか上の部分で、暗号化データが元に戻っていません。
どうすればいいですか。
TISAproject
記事: 62
登録日時: 2016年9月24日(土) 15:35

Re: 暗号化

#2 投稿記事 by TISAproject »

ようするに、cryptの内容が、『なにぬねの』に戻っていないのです。
Tako

Re: 暗号化

#3 投稿記事 by Tako »

暗号コードでは無く、復元コードで復元しないと戻りませんょ。

よくわからないのですが、こんな感じで良いですか?

コード: 全て選択


Dim crypt As String
Dim i As Byte

Dim Buffer As String

Buffer = "なにぬねの"
Dim key As Long
key = 1


' 暗号化
crypt = String$(Len(Buffer), Chr$(0))

For i = 0 To Len(crypt) - 1
    ' 文字コードにパスワードの数字を足して暗号化データを作る
    crypt = (Buffer + key) Mod 256
Next

Dim Mkey As Long
	Mkey = -1 * key

' 復元化
For i = 0 To Len(crypt) - 1
    '暗号化データを戻す
     crypt = (crypt + Mkey) Mod 256
Next
返信する