DOBON.NETプログラミング掲示板過去ログ
日本語の暗号化・復元化
題名: 日本語の暗号化・復元化
著者: Taro
日時: 2011/07/10 23:11:13
ID: 28754
この記事の返信元:
(なし)
この記事への返信:
[28757]
Re[1]: 日本語の暗号化・復元化
Hongliang
2011/07/11 9:53:17
ツリーを表示
環境/言語:[VB]
分類:[.NET]
ttp://msdn.microsoft.com/ja-jp/library/ms172831(v=vs.80).aspx
上記のサイトを参照して作ったのですが
半角英数字・記号は正常に復元化したのですが
日本語は失敗しました。
どのようにしたら日本語も正常に復元化できるのでしょうか?
題名: Re[1]: 日本語の暗号化・復元化
著者: Hongliang
日時: 2011/07/11 9:53:17
ID: 28757
この記事の返信元:
[28754]
日本語の暗号化・復元化
Taro
2011/07/10 23:11:13
この記事への返信:
(なし)
ツリーを表示
// このページまだ直ってないの!?
暗号化されたバイト列には、あらゆるバイトが存在し得ます。
そのバイト列に対して Encoding.Unicode.GetString を呼び出しちゃうと、
Unicode(UTF-16) で扱えないバイトの並びが現れる場合が出現し得ます。
その場合 GetString メソッドは ? とかに置き換えたり省略したりするので、
次に GetBytes するときに元の暗号化バイト列に戻すことが出来なくなります。
暗号化バイト列を文字列で表現したいのなら、Convert.ToBase64String を使って
Base64 で文字列化したりするようにします。
たとえばこのページなど、そうしているようです。
http://msdn.microsoft.com/ja-jp/library/ms172831
// こっちはこっちでタイトルが…
まあ文字列化する必要がない(バイト配列で持っておけばよい)のならそもそも関係ない話ですが。
DOBON.NET
|
プログラミング道
|
プログラミング掲示板
分類:[.NET]
ttp://msdn.microsoft.com/ja-jp/library/ms172831(v=vs.80).aspx
上記のサイトを参照して作ったのですが
半角英数字・記号は正常に復元化したのですが
日本語は失敗しました。
どのようにしたら日本語も正常に復元化できるのでしょうか?