やっぱりそうだったか!!
前からPAR3の暗号化とGC-PARの暗号化は似ていると思っていた。
ただ、PAR3の方が少し複雑に見えた。
先日、よく整理してみると、PAR3の複雑な部分というのはPAR2の暗号化だと気づいたわけだが、もしかして残りの部分はGCと同じ何じゃないだろうかと思っていた。
ちょっとソースコードを比較してみたが、やっぱり同じに見える。
じゃ、ちょっと試してみた。
仮定では、
PAR3暗号化=PAR2暗号化 + GC暗号化
GCで暗号化されたものをPAR3で復号化してみた。
予想が正しければ、結果はPAR2の復号化を余計にされたものになるはずだ。
結果は、、、全然違う。
えーーーーーなんで?
もう一度ソースコードを見直す。
やっぱり、同じだ。。。
いや、ちょっと待て、genseedsってなんだ?
seedsをgenerateする?
これだ!!
ここをよく見ると、違いを発見。
genseedsのPAR3のテーブルをGCのものに置き換えて再テスト。
見事に一致!!
やっぱり同じものだったんだ。
要するに暗号の鍵が違うだけで、方式は一緒。
だったら、暗号化クラスももう少し考えれば、どっちでも使えるな。
ちょっと感動した。
ただ、PAR3の方が少し複雑に見えた。
先日、よく整理してみると、PAR3の複雑な部分というのはPAR2の暗号化だと気づいたわけだが、もしかして残りの部分はGCと同じ何じゃないだろうかと思っていた。
ちょっとソースコードを比較してみたが、やっぱり同じに見える。
じゃ、ちょっと試してみた。
仮定では、
PAR3暗号化=PAR2暗号化 + GC暗号化
GCで暗号化されたものをPAR3で復号化してみた。
予想が正しければ、結果はPAR2の復号化を余計にされたものになるはずだ。
結果は、、、全然違う。
えーーーーーなんで?
もう一度ソースコードを見直す。
やっぱり、同じだ。。。
いや、ちょっと待て、genseedsってなんだ?
seedsをgenerateする?
これだ!!
ここをよく見ると、違いを発見。
genseedsのPAR3のテーブルをGCのものに置き換えて再テスト。
見事に一致!!
やっぱり同じものだったんだ。
要するに暗号の鍵が違うだけで、方式は一緒。
だったら、暗号化クラスももう少し考えれば、どっちでも使えるな。
ちょっと感動した。
Comments