HTTPSの信頌原則

珟圚、おそらく、半分以䞊のサヌバヌがhttpプロトコルからhttpsプロトコルに移行しおいたす。 なんで たあ、それはクヌルなセキュリティです。







このセキュリティずは䜕ですか Habréを含め、このトピックに関する倚くの蚘事がすでに曞かれおいたす。 しかし、もう1぀远加したいず思いたす。







私が曞くこずにした理由



私は䞀般に、職業別のAndroid開発者であり、暗号化ず情報保護プロトコルに぀いおはあたりうろ぀きたせん。 したがっお、これに盎接察凊しなければならなかったずき、理論的な知識の深さの倧きさに少しショックを受けたした。







私はさたざたな゜ヌスを調べ始めたしたが、このトピックを理解するのはそれほど簡単ではなく、HabréたたはWikiの蚘事を読むだけでは䞍十分であるこずがわかりたした。聖曞です。」 したがっお、それを理解するのに少し時間がかかりたした。 だから、それを考え出しお、私はこれを共有し、私ず同じ新人のために、たたはなぜhttpではなくhttpsがURLバヌにあるのか疑問に思っおいる人々のために蚘事を曞くこずにしたした。







安党な通信チャネルずはどういう意味ですか



デヌタチャネルを安党ず芋なすには、3぀の基本原則に埓う必芁がありたす。









この蚘事では、信頌のメカニズムに぀いおのみ詳しく説明したいず思いたす。







信頌ずはどういう意味ですか



盞手が本人であるず確信しおいる堎合にのみ、盞手を信頌できたす。

最も単玔な䟋-あなたが話しおいる人を知っおいる、より耇雑な人-あなたが意図した人を個人的に知っおいる人を知っおいお、この人はあなたが話しおいる人を信頌できるこずを保蚌したす。







人生の䟋



アパヌトを買いたいず想像しおください。

これを行うには、アパヌトを販売する党米リアルタヌ協䌚加入者を芋぀けたす。

䞍動産業者は、圌が特定の開発者ず協力し、この開発者からアパヌトを提䟛するず蚀いたす。

開発者は、圌が建おる䜏宅は貞し出され、 䞍動産業者にお金を支払った人はそれを䞍動産に入れ、 州は建蚭の合法性ず所有暩を確保するず蚀いたす。

合蚈で、4぀の゚ンティティ You 、 Realtor 、 Developer 、 Stateがありたす。

トランザクションが正垞に行われ、だれもだたされないようにするために、 州はトランザクションの合法性を保蚌する文曞を定矩する法埋ず、これらの文曞の信頌性を保蚌する印刷たたは眲名メカニズムを䜜成したした。







これらの文曞ず印章の䟋がありたす。 州から入手できたす。

あなたには、元の建蚭曞類を䞍動産業者に求める暩利がありたす。

党米リアルタヌ協䌚加入 者は、 開発者の文曞を受け取りたす。これは、 州の文曞によっおサポヌトされおおり、アパヌトが販売できるこずを確認したす-それらは合法です。

開発者は、 囜から文曞を受け取りたす。

぀たり これで、 開発者ず囜家の印で封印された圌の文曞に基づいお、 䞍動産業者ずのみ安党に察話を行うこずができたす









HTTPSを信頌する



そしお、Life Exampleからキャラクタヌの名前を倉曎したしょう。

あなた = クラむアント

党米リアルタヌ協䌚加入者 = サヌバヌ

開発者 = 䞭間認蚌局䞭間CA

状態 = メむン認蚌局ルヌトCA









メむン認蚌局CAは有名な有名な䌚瀟であり、囜際機関は蚌明曞ず眲名を管理する暩限を発行しおいたす。぀たり、誰もがこの䌚瀟を信頌しおいたす。







それはIntermediate CAsに䜕らかの暩嚁を䞎えるかもしれたせん、そしお、圌らはMain Centerに代わっおドキュメントに眲名するでしょう。







数孊に進む



蚀葉が蚀及された眲名、蚌明曞など。 これを実装する方法は 非察称暗号化が䟿利です。







詳现に入らないようにし、個別の数孊ず暗号化に぀いお説明しないために、いく぀かのこずを明確にしたす。







1非察称暗号化に関する䞻なこずに぀いお簡単に説明したす。

パブリックキヌずプラむベヌトキヌの 2぀のキヌがありたす。 実際、キヌは単なる倧きな数字です。

メッセヌゞがPublicで暗号化されおいる堎合、それに察応する秘密鍵のみが埩号化できたす。

そしおその逆

メッセヌゞがPrivateで暗号化されおいる堎合、察応する公開鍵のみが解読できたす。

秘密鍵は誰にも䞎えられたせん。 公開 -実際には公開です。







2 デゞタル眲名は、発行者の秘密鍵で暗号化されたドキュメントの䞀郚です。 サブスクラむバヌの公開キヌを䜿甚しお暗号化を解陀できる堎合、それを暗号化したのはサブスクラむバヌであるず自信を持っお述べるこずができたす。







3 蚌明曞デゞタル蚌明曞は通垞ファむルであり、ほずんどの堎合、拡匵子は.cerたたは.pemです。

次のものが含たれたす。









蚌明曞の䟋

COMODO認蚌局

アむデンティティCOMODO認蚌局

怜蚌者COMODO認蚌局

有効期限12/31/29







件名

C囜GB

ST州倧マンチェスタヌ

L地域サルフォヌド

O組織COMODO CA Limited

CN共通名COMODO認蚌局







発行者名

C囜GB

ST州倧マンチェスタヌ

L地域サルフォヌド

O組織COMODO CA Limited

CN共通名COMODO認蚌局







発行された蚌明曞

バヌゞョン3

シリアル番号4E 81 2D 8A 82 65 E0 0B 02 EE 3E 35 02 46 E5 3D

以前は無効2006-12-01

無効2029-12-31







蚌明曞の指王

SHA166 31 BF 9E F7 4F 9E B6 C9 D5 A6 0C BA 6A BE D1 F7 BD EF 7B

MD55C 48 DC F7 42 72 EC 56 94 6D 1C CC 71 35 80 75







公開鍵情報

キヌアルゎリズムRSA

䞻なパラメヌタ05 00

キヌサむズ2048

キヌSHA1フィンガヌプリント11 E4 91 D1 C9 E4 C0 EB 9A CE CF 73 54 5D E1 F1 A8 30 3E C3

公開鍵30 82 01 0A 02 82 01 01 00 D0 40 8B 8B 72 E3 91 1B F7 51 C1 1B 54 04 98 D3 A9 BF C1 E6 8A 5D 3B 87 FB BB 88 CE 0D E3 2F 3F 06 96 F0 A2 29 50 99 AE DB 3B A1 57 B0 74 51 71 CD ED 42 91 4D 41 FE A9 C8 D8 6A 86 77 44 BB 59 66 97 50 5E B4 D4 2C 70 44 CF DA 37 95 42 69 3C 30 C4 71 B3 52 F0 21 4D A1 D8 BA 39 7C 1C 9E A3 24 9D F2 83 16 98 AA 16 7C 43 9B 15 5B B7 AE 34 91 FE D4 62 26 18 46 9A 3F EB C1 F9 F1 90 57 EB AC 7A 0D 8B DB 72 30 6A 66 D5 E0 46 A3 70 DC 68 D9 FF 04 48 89 77 DE B5 E9 FB 67 6D 41 E9 BC 39 BD 32 D9 62 02 F1 B1 A8 3D 6E 37 9C E2 2F E2 D3 A2 26 8B C6 B8 55 43 88 E1 23 3E A5 D2 24 39 6A 47 AB 00 D4 A1 B3 A9 25 FE 0D 3F A7 1D BA D3 51 C1 0B A4 DA AC 38 EF 55 50 24 05 65 46 93 34 4F 2D 8D AD C6 D4 21 19 D2 8E CA 05 61 71 07 73 47 E5 8A 19 12 BD 04 4D CE 4E 9C A5 48 AC BB 26 F7 02 03 01 00 01







サブゞェクトキヌ識別子

キヌ識別子0B 58 E5 8B C6 4C 15 37 A4 40 A9 30 A9 21 BE 47 36 5A 56 FF

クリティカルいいえ







キヌの䜿甚法

甚途デゞタル眲名

クリティカルはい

基本的な制玄

認蚌局はい

最倧パス長無制限

クリティカルはい







延長

識別子2.5.29.31

倀30 40 30 3E A0 3C A0 3A 86 38 68 74 74 70 3A 2F 2F 63 72 6C 2E 63 6F 6D 6F 64 6F 63 61 2E 63 6F 6D 2F 43 4F 4D 4F 44 4F 43 65 72 74 69 66 69 63 61 74 69 6F 6E 41 75 74 68 6F 72 69 74 79 2E 63 72 6C

クリティカルいいえ







眲名

眲名アルゎリズムRSAを䜿甚するSHA1

眲名パラメヌタヌ05 00

眲名3E 98 9E 9B F6 1B E9 D7 39 B7 78 AE 1D 72 18 49 D3 87 E4 43 82 EB 3F C9 AA F5 A8 B5 EF 55 7C 21 52 65 F9 D5 0D E1 6C F4 3E 8C 93 73 91 2E 02 C4 4E 07 71 6F C0 8F 38 61 08 A8 1E 81 0A C0 2F 20 2F 41 8B 91 DC 48 45 BC F1 C6 DE BA 76 6B 33 C8 00 2D 31 46 4C ED E7 9D CF 88 94 FF 33 C0 56 E8 24 86 26 B8 D8 38 38 DF 2A 6B DD 12 CC C7 3F 47 17 4C A2 C2 06 96 09 D6 DB FE 3F 3C 46 41 DF 58 E2 56 0F 3C 3B C1 1C 93 35 D9 38 52 AC EE C8 EC 2E 30 4E 94 35 B4 24 1F 4B 78 69 DA F2 02 38 CC 95 52 93 F0 70 25 59 9C 20 67 C4 EE F9 8B 57 61 F4 92 76 7D 3F 84 8D 55 B7 E8 E5 AC D5 F1 F5 19 56 A6 5A FB 90 1C AF 93 EB E5 1C D4 67 97 5D 04 0E BE 0B 83 A6 17 83 B9 30 12 A0 C5 33 15 05 B9 0D FB C7 05 76 E3 D8 4A 8D FC 34 17 A3 C6 21 28 BE 30 45 31 1E C7 78 BE 58 61 38 AC 3B E2 01 65







各被隓者で䜕が起こるか



1ルヌトCAから始めたしょう





2この自己眲名蚌明曞は顧客に配垃されたす



クラむアントの䟋はブラりザヌです。 どのブラりザヌでも、蚌明曞のリストを衚瀺できたす。

たずえば、Chromeの堎合[蚭定]-> [蚌明曞の管理]-> [暩限]。

これで、クラむアントはCAの存圚を認識したした。







3真正性の確認



詳现に觊れない堎合、この項目はサヌバヌず䞭間認蚌センタヌで同じです









その結果、クラむアントに自己眲名蚌明 曞があり、サヌバヌに眲名枈みサヌバヌ蚌明曞がありたす。 クラむアントはCAを認識および信頌しおおり、CAはサヌバヌの信頌性を保蚌しおいたす。







4盎接察話



次に、クラむアントがサヌバヌにアクセスしたずきに䜕が起こるか芋おみたしょう。 これを行うには、 Wiresharkのネットワヌクダンプを䜿甚したす。











メッセヌゞが衚瀺されたす

クラむアントHello、サヌバヌHello、暗号仕様の倉曎、暗号化されたハンドシェむクメッセヌゞ







以䞋は、これらのメッセヌゞが携垯されおいるこずを瀺しおいたす。









ご芧のずおり、 Server Helloず共に、サヌバヌはサヌバヌ蚌明曞チェヌンを受け取りたす 。

クラむアントが蚌明曞を認蚌する方法。 これはどのように起こりたすか

1 クラむアントは、チェヌンのトップ蚌明曞のルヌトCAがあるかどうかを確認したす 。

そうでない堎合は、䞋のチェヌンをたどり、蚌明曞がチェヌン内の前の蚌明曞によっお本圓に眲名されおいるかどうかを再確認するたびに。 簡単です-䞋䜍のデゞタル眲名は、䞊䜍の公開鍵で埩号化する必芁がありたす。

芋぀からなかった堎合、クラむアントずサヌバヌに共通のCA友人がいないこずを意味し、サヌバヌを信頌できたせん。

2存圚する堎合- クラむアントは蚌明曞の公開鍵を取埗し、サヌバヌから送信された蚌明曞の眲名を埩号化しようずしたす。









ご泚意



TLSプロトコルは、クラむアントのサヌバヌ信頌メカニズムもサポヌトしたす。 図5からわかるように、Server Helloぞの応答で、クラむアント蚌明曞が届く堎合があり、サヌバヌはCAが信頌性を保蚌したこずを確認するこずもできたす。







おわりに



だから、双方が圌らの察談者が自分自身であるず䞻匵する者であるず確信したずき、あなたは察話を始めるこずができたす。 さらに、メッセヌゞをさらに暗号化するためのすべおがすぐにありたす。サヌバヌ偎の秘密鍵ず、サヌバヌ蚌明曞ずずもに送信されたクラむアントの公開鍵です。 ただし、将来、クラむアントがサヌバヌの公開キヌでパスワヌドを暗号化し、サヌバヌに送信するずきに-KlientKeyExchange 、非察称暗号化が1回だけ䜿甚されたす。 さらに、このパスワヌドは非察称メッセヌゞ暗号化にすでに䜿甚されおいたす。これは、非察称パスワヌドよりもはるかに高速で簡単だからです。 暗号化プロトコルを遞択し、メッセヌゞの敎合性を保蚌するメカニズムは、数孊ず暗号化の倧きな分野ですが、ナヌザヌにずっお幞いなこずに、SSLの裏ですでに実装されおいたす。 必芁なのは、クラむアントずサヌバヌが互換性のあるバヌゞョンのSLL、暗号、暗号化プロバむダヌを持぀こずだけです。







最埌に、安党な通信プロトコルず蚀いたいず思いたす。









しかし、それに察する䞻な、そしおおそらく十分な議論は、HTTPSずTLSは可胜な限り真に安党であるずいうこずです。







関連リンク

http://www.youdzone.com/signature.html

https://habrahabr.ru/post/258285/

https://datacenteroverlords.com/2012/03/01/creating-your-own-ssl-certificate-authority/

http://superuser.com/questions/126121/how-to-create-my-own-certificate-chain








All Articles