rch850 の上澄み

技術的な話題とか、雑談とか。タイトルを上澄みに変えました @ 2020/09/02

なぜ Apple は RC4 を選んだのか

WWDC で Swift が発表されましたね。

なぜ Python が狙われたのか!?Android を擁するグーグルの独自言語だから!?その Python は CPython なの?PyPy ならどうなの???

などなどの疑問は置いといて、それより気になるのは RC4 を使ってる件。なぜ RC4 なのか?これを見て「Apple が比較に使うような暗号化方式だから RC4 を積極採用しよう」なんて言い出す勢がいないとも限らない。RC4 は危険だ。詳しくは「我々はどのようにして安全なHTTPS通信を提供すれば良いか」を読もう。

ではなぜ AppleRC4 を選んだのか。

同じような暗号化で言うと、最近は AES のほうがよっぽど使われてるし、推奨されてる。でも AES を高速化するなら AES-NI 使っちゃえばいいじゃん?めっちゃ速いよ?というわけで、AES を使った比較は不毛だという話になったのかもしれない。

AES みたいなブロック暗号じゃなくて、RC4 と同じストリーム暗号でなんかないの?っていうと、うーん。Google が今年の2月頃にストリーム暗号の ChaCha20 を使ってたんだけど、なんか1ヶ月弱で使うのやめたっぽいんだよね。そんなわけで、比較対象としてよく使われるストリーム暗号を選び出せと言われても、RC4 しかないのが実情。

あ、もしかして AppleRC4 使ってるから?

f:id:rch850:20140604013451p:plain

f:id:rch850:20140604013500p:plain

あー、うん、なるほどなるほど。これならしょうがないね^^;