タグ

2023年12月12日のブックマーク (7件)

  • Go 1.20 crypto/ecdh導入の理由 - Simple minds think alike

  • HMACとは 認証の仕組みと実装 | Okta

    HMACとは、Hash Based Message Authentication Codeの略で、公開鍵、秘密鍵、ハッシュを組み合わせることで、ハッカーが情報を解凍できないようにするメッセージ認証の暗号化技術の1つです。 HMACを使用することで、メッセージなどのデータの暗号化と、得られる情報の整合性チェックの両方が可能になります。 →Okta Japanの資料請求はこちら HMACの仕組み 2人の当事者間で通信する場合を考えてみましょう。それぞれが接続の内容を非公開にしたいと考えていたとします。その場合、またインターネットを信頼していないため、受信したパケットが改ざんされていないことを確認する方法が必要です。このようなとき、HMACは有効な解決策となります。 HMAC鍵は、以下の2つの部分で構成されます。 暗号鍵:暗号化アルゴリズムはデータを変更し、受信者は再び読み取り可能にするために特

    HMACとは 認証の仕組みと実装 | Okta
  • HMAC: メッセージ認証のための鍵付ハッシング

    H. Krawczyk IBM M. Bellare UCSD R. Canetti IBM 1997年 2月 HMAC: メッセージ認証のための鍵付ハッシング (HMAC: Keyed-Hashing for Message Authentication) このメモの位置付け このメモは、 インターネット・コミュニティに対して情報を提供するものである。 このメモは、何らインターネットの標準を規定するものではない。 このメモの配布に制限はない。 要旨 この文書では、 暗号ハッシュ関数を使用してメッセージ認証を行なう仕組みであるHMACについて記述する。 HMACは、 MD5やSHA-1などの反復暗号ハッシュ関数を秘密の共有鍵と組み合わせて使用する。 HMACの暗号としての強度は、 使用しているハッシュ関数のプロパティに依存する。 1.はじめに 信頼できないメディア上を伝送し、 蓄積される情

  • 電子署名と公開鍵暗号方式

    電子署名で重要な役割を果たす公開鍵暗号は、暗号化と復号とで異なる2つの鍵(秘密鍵と公開鍵)を使用する方式です。秘密鍵は、その所有者(署名者)によって秘密を保って管理される鍵であり、秘密鍵と対になる公開鍵は基的に公開することが可能で、他の人(署名検証者)に利用してもらうための鍵です。電子署名は、秘密鍵鍵で署名を作成し、秘密鍵と対になる公開鍵で検証することになります。 電子署名法で、使用が認められている「公開鍵暗号」としては、RSA暗号方式、DSA署名方式、およびECDSA署名方式の3種類です。このうち、DSA署名方式とECDSA署名方式は、公開鍵暗号に分類されますが、署名しかできない公開鍵暗号方式です。 1.RSA暗号方式 RSA暗号方式は、現在最も一般的に使われている公開鍵暗号方式です。RSA暗号方式では、2つの大きな素数 p と q を生成し、 p と q の積 n ( n = p ×

    電子署名と公開鍵暗号方式
  • 電子署名による認証(身分証明) - Qiita

    はじめに 暗号技術のなかでも、公開鍵暗号(広義)に分類されるものとして、電子署名があります。 これは、PKI ( 認証局、SSL/TLS証明書、…etc. ) という文脈で説明されているのは見かけるのですが、何者であるかを証明する「認証」という役割での説明は、なかなか見ないように思います。 ということで今回、認証に絞って説明ができないかどうか、試みとして書いてみようと思います。 なお、前提知識として電子署名の基礎知識に目を通しておくことをお勧めします。 電子署名による認証へのアプローチ 認証とは? 電子署名を認証(身分証明)に使うというのがこの記事のテーマなわけですが、そもそも認証というのは何でしょうか。 日常生活においては、例えば自身の身分証明書なり、予め取り決めたパスワード・暗証番号なりを提示して人であることを立証することが該当するかと思います。 つまりは人しか持ち得ない/知り得な

    電子署名による認証(身分証明) - Qiita
  • 【Golang】ECDSA 公開鍵から DH 鍵交換で共通鍵を作成する(ディフィー・ヘルマン鍵共有) - Qiita

    import "crypto/elliptic" // Alice と Bob の事前合意。共通パラメーターとして NIST P256 の曲線を使用する、とする。 // 選択肢は: P224, P256, P384, P521 paramCommon := elliptic.P256() import "crypto/ecdsa" // -------------------------------------------------------------- // Alice の公開鍵暗号のペア鍵作成 // -------------------------------------------------------------- alicePriv, err := ecdsa.GenerateKey(paramCommon, rand.Reader) PanicOnError(err)

    【Golang】ECDSA 公開鍵から DH 鍵交換で共通鍵を作成する(ディフィー・ヘルマン鍵共有) - Qiita
  • ChatGPT APIクライアントアプリ『TmCGPT Debugger』v2.0-beta

    公開中のChatGPTAPIクライアントアプリの、次バージョンのベータ版を公開します。 正直、見た目がモダンになっただけで機能を少し整理した程度です。もともとマルチプラットフォーム対応のためにAvaloniaUIで作り直したのですが、 現状Mac版がうまく動かせていないので、Windows版のみ暫定公開とします。 ※Mac版も動くようになりました。 v1.0~に搭載されているエディター部のシンタックスハイライト機能もまだ未搭載です。 使用するにはOpenAIAPIキーが必要ですが、よろしければどうぞ。 ダウンロード gitにて公開中です。 特徴 縦5分割のテキストエディター 文章を切り貼りして命令文/プロンプトを構成しやすいようになっています。 Webサービス版ログのインポート ChatGPTのアカウントでログインしてWebサービス版のログをインポートできます。チャットの長さが最大に達

    ChatGPT APIクライアントアプリ『TmCGPT Debugger』v2.0-beta