タグ

暗号に関するakishin999のブックマーク (83)

  • プログラマのための公開鍵による暗号化と署名の話

    初めに 公開鍵による暗号化と署名をプログラマ向け(?)に書いてみました。ちまたによくある暗号化と署名の話はインタフェースと実装がごちゃまぜになっていることが分かり、暗号化と署名の理解が進めば幸いです(と思って書いたけど、余計分からんといわれたらすんません)。登場する言語は架空ですが、多分容易に理解できると思います。 公開鍵による暗号化PKE 早速、公開鍵による暗号化(PKE : Public Key Encryption)を紹介します。登場するのは暗号化したいデータのクラスPlainText, 暗号文クラスCipherText, 秘密鍵クラスPrivateKeyと公開鍵クラスPublicKeyです。PKEは次の3個のインタフェースを提供しています。 abstract class PKE { abstract keyGenerator(): [PrivateKey, PublicKey];

    プログラマのための公開鍵による暗号化と署名の話
  • Winnyは“暗号の使い方”がおかしかった 通信解析でわかった鍵交換・ファイル交換の挙動

    映画『Winny』の公開に伴い、記憶から消えかけている20年前の諸々の思い出話をする「Winnyとは何だったのか v2.0b7.1」。ここで杉浦氏が登壇。Winnyを解析してわかったことと、当時リリースしたサービスについて紹介します。 Winnyの解析をしていた杉浦氏 杉浦隆幸氏(以下、杉浦):杉浦です。今日は「Winny解析技術と」ということで、(Winnyを)解析した当初(のこと)を思い出して話そうと思います。 自己紹介ですが、Winnyの暗号技術を解読した人ということで。今日はそれで十分かと思います。当時の趣味は通信の解析で、いろいろな通信を解析していました。楽しかったです。 映画『Winny』を、2月14日に舞台挨拶付きの試写会で観てきました。非常に楽しかったので、今日の発表はその伏線も入れたものとなります。 Winnyの登場、そして逮捕者の発生 (スライドを示して)20年前。47

    Winnyは“暗号の使い方”がおかしかった 通信解析でわかった鍵交換・ファイル交換の挙動
  • Google Authenticator、オプションのE2EE機能追加へ 「ユーザーがロックアウトされる可能性もある」

    GoogleのIDおよびセキュリティ担当プロダクトマネジャーのクリスティアーン・ブラッド氏は4月27日、2段階認証アプリ「Google Authenticator」(日では「Google認証システム」)に将来オプションでE2EE(エンドツーエンド暗号化)する機能を追加するとツイートした。 同社は24日、このアプリのアップデートで、ワンタイムコードを端末ではなく、Googleアカウントに(つまりクラウドに)保存するようにした。 このアップデートは概ね歓迎されているが、Myskと名乗るセキュリティ研究者が26日、コードを同期する際のネットワークトラフィックがE2EEになっていないとツイートで指摘し、ユーザーにこのアプリを使わないよう警告した。 E2EEは、データが送信されて別の端末に保存される前に、ユーザーだけが知っているパスワードを使って端末上でデータを暗号化する仕組みだ。 Google

    Google Authenticator、オプションのE2EE機能追加へ 「ユーザーがロックアウトされる可能性もある」
  • やはりお前らの「公開鍵暗号」はまちがっている。

    ※タイトルの元ネタは以下の作品です。 はじめに この記事は、公開鍵暗号の全体感を正しく理解するためのものです。数学的な部分や具体的なアルゴリズムは説明しません。気になる方は最後に紹介するオススメ書籍をご覧ください。 少し長いですが、図が多いだけで文字数はそこまで多くありません。また、専門的な言葉はなるべく使わないようにしています。 ただしSSHやTLSといった通信プロトコルの名称が登場します。知らない方は、通信内容の暗号化や通信相手の認証(人確認)をするためのプロトコルだと理解して読み進めてください。 公開鍵暗号の前に:暗号技術とは 公開鍵暗号は暗号技術の一部です。暗号と聞くと、以下のようなものを想像するかもしれません。 これは情報の機密性を守るための「暗号化」という技術ですが、実は「暗号技術」と言った場合にはもっと広い意味を持ちます。まずはこれを受けて入れてください。 念のため補足して

    やはりお前らの「公開鍵暗号」はまちがっている。
  • あなたの「公開鍵暗号」はPKE? それともPKC? - Cybozu Inside Out | サイボウズエンジニアのブログ

    初めに サイボウズ・ラボの光成です。 いきなりですがクイズです。次のうち正しい説明はどれでしょう。 SSHやFIDO2などの公開鍵認証はチャレンジを秘密鍵で暗号化し、公開鍵で復号して認証する。 ビットコインでは相手の公開鍵を用いてハッシュ値を暗号化して相手に送る。 TLS1.3ではサーバ公開鍵を用いてAESの秘密鍵を暗号化する。 答えはどれも間違いです。 公開鍵認証は、(デジタル)署名を使って相手先の正しさを検証するものであり、暗号化は行われません。 同様にビットコインもデータや相手の正当性を確認するために署名が用いられ、暗号化は行われません。 TLS 1.3ではRSA暗号の公開鍵を用いて暗号化する方式(static RSA)は廃止され、ECDH鍵共有された値を元に秘密鍵を生成し、AES-GCMなどの認証つき暗号で暗号化します。 公開鍵暗号とは いわゆる公開鍵暗号には大きく2種類の意味があ

    あなたの「公開鍵暗号」はPKE? それともPKC? - Cybozu Inside Out | サイボウズエンジニアのブログ
  • ファイルベースの暗号化(FBE)されたAndroid10のエミュレータの/data/data/領域をPCで復号してみる

    ファイルベースの暗号化の説明にある通り、Android7.0以降ではファイルベースの暗号化(FBE)がサポートされています。Android10の/data/data/領域(最初のユーザーのアプリストレージ)もFBEで暗号化されています。FBEによる暗号化はスクリーンロック設定の有無に関わらず行われていますが、スクリーンロック設定が無い方が復号に必要な情報が少なくなります。 スクリーンロック設定が無いAndroid10のエミュレータから/data/data/に該当する領域をダンプし、PCLinux)で復号を試みたところ成功しました。稿では使用した環境とその手順について記載します。 手順の概要 大きく分けて3つの手順を踏みます。 Android10のエミュレータから、復号対象のデータをダンプ Android10のエミュレータから、復号用の鍵をダンプ ダンプしたデータと鍵を使用して、PCで復

    ファイルベースの暗号化(FBE)されたAndroid10のエミュレータの/data/data/領域をPCで復号してみる
  • E2EE を開発していて思うこと

    ここ数ヶ月は自社製品向けの End to End (Media) Encryption の設計と実装をしています。年内での提供を目標として開発を進めてい見ていますが、色々感じることがあったので雑に書いていこうと思います。 前提自分は暗号やセキュリティの専門家ではない自社製品向けの E2EE は Signal や Google Duo が利用している実績のある仕組みを採用しているE2EE や暗号の専門家を招聘し、相談しながら開発している自分の E2EE に対する考え悪意あるサービス管理者からユーザを守るために存在する機能と考えています。 Signal プロトコルはよく考えられすぎているSignal が考えた Curve25519 (x25519/ed25519) を利用した X3DH / Double Ratchet の仕組みは安全すぎると感じるくらいです。 相手からメッセージを受信するたび

  • 公開鍵暗号関連のテキストの間違いの典型例 - Qiita

    はじめに 背景 世間一般の公開鍵暗号関連の解説書・サイトは99%あてになりませんが、一例として、とある情処対策の解説動画の添削を行います。 ※twitterで問題点を説明する機会があったので、折角なら記事として共有できる形にしようという動機からです。 対象 対象の動画は https://www.youtube.com/watch?v=rgK4FGENzMo で、2021/3/1時点の内容を元にしています。 ※後日修正される可能性もあるため。 なお、先に断っておくと、この動画が特別酷いわけではなくて、大体どれもどんぐりの背比べです。如何にみんな真面目に情報を検証していないか、ということが実感できます。 動画のスライドの添削 スライド1: ディジタル署名(~0:48) 第1段落「公開鍵暗号方式を使って」 ディジタル署名とは、公開鍵暗号方式を使ってデジタル文書の正当性を保証する技術です この表現

    公開鍵暗号関連のテキストの間違いの典型例 - Qiita
  • SSHの公開鍵暗号には「RSA」「DSA」「ECDSA」「EdDSA」のどれを使えばよいのか?

    リモートでコンピューターにアクセスするためのプロトコルであるSSHは、コンピューターの認証を行うために公開鍵暗号を利用しています。公開鍵暗号の方式には「RSA」「DSA」「ECDSA」「EdDSA」があり、それぞれの仕組みと「SSHに適した方式」についてソフトウェア企業「Gravitational」のVirag Mody氏が解説しています。 Comparing SSH Encryption Algorithms - RSA, DSA, ECDSA, or EdDSA? https://gravitational.com/blog/comparing-ssh-keys/ 公開鍵暗号は、暗号化と復号に別々の鍵を用いる暗号方式のこと。例えば、ボブとアリスがやり取りを行う時、アリスは秘密鍵と公開鍵を作成し、公開鍵をボブに渡しておきます。ボブはアリスの公開鍵でメッセージを暗号化してアリスに送信。暗号

    SSHの公開鍵暗号には「RSA」「DSA」「ECDSA」「EdDSA」のどれを使えばよいのか?
  • 自堕落な技術者の日記 : jsrsasignの寄付金を募ることにしてみました(やりがいって何だっけ?) - livedoor Blog(ブログ)

    私はjsrsasignというJavaScriptのオープンソース暗号、PKIライブラリを個人的な趣味で開発し公開しています。ところが最近、npmパッケージのダウンロードが月間60~70万件と、異常にユーザーも増え、製品でも使われ始め、ちょっと厄介なことになっており、いろいろ悩んだ挙げ句、これが正解なのかもわかりませんが、ライブラリの維持のために寄付金を募ることにした次第です。今日は、心の吐露をつらつら書いていくことにします。 jsrsasignとは 2010年ごろ、スタンフォードの学生さんであるTom Wooさんという人のJavaScriptでRSA暗号化できるコードを見つけ、自分はPKIや電子署名を専門にしていたので「JavaScriptでRSA署名できたら面白いな」と思い、2010年6月に、ほんのRSA署名単機能のライブラリとして公開したのが jsrsasign です。当時のはしゃぎっ

  • PGP(GnuPG)の導入方法教えてやるから、いい加減、ファイルをZIP暗号化して、別メールでパスワードを送るのは、やめてくれ! ~ファイル添付編~ - Qiita

    PGP(GnuPG)の導入方法教えてやるから、いい加減、ファイルをZIP暗号化して、別メールでパスワードを送るのは、やめてくれ! ~ファイル添付編~WindowsemailPGP暗号化GnuPG 久しぶりの更新です。 前回は、ちょっと脱線してしまいました 「PGP(GnuPG)の導入方法教えてやるから、いい加減、ファイルをZIP暗号化して、別メールでパスワードを送るのは、やめてくれ!~公開キー配布編~ - Qiita」では、キー配布編になってしまい、肝心のファイル添付のことが書けませんでした。 ということで、今回は、題のファイル添付編を行いたいと思います。 セットアップ編では、たくさんのいいねやシェアをありがとうございます 「PGP(GnuPG)の導入方法教えてやるから、いい加減、ファイルをZIP暗号化して、別メールでパスワードを送るのは、やめてくれ! ~セットアップ編~ - Qiita

    PGP(GnuPG)の導入方法教えてやるから、いい加減、ファイルをZIP暗号化して、別メールでパスワードを送るのは、やめてくれ! ~ファイル添付編~ - Qiita
  • PGP(GnuPG)の導入方法教えてやるから、いい加減、ファイルをZIP暗号化して、別メールでパスワードを送るのは、やめてくれ!~公開キー配布編~ - Qiita

    PGP(GnuPG)の導入方法教えてやるから、いい加減、ファイルをZIP暗号化して、別メールでパスワードを送るのは、やめてくれ!~公開キー配布編~WindowsemailPGP暗号化GnuPG 前回の続き 「PGP(GnuPG)の導入方法教えてやるから、いい加減、ファイルをZIP暗号化して、別メールでパスワードを送るのは、やめてくれ! ~セットアップ編~ - Qiita」の続きです。 #いいねしていただいた方々に感謝いたします。 初めての方は、上記のサイトを参照していただけますようお願いいたします。 【お詫び】当は、ファイル暗号化編を作っていた 来であれば、ファイル暗号化編を作りたかったのですが、公開キーの配布方法を書いていなかったなと思い、書いていたら、かなりの量になってしまい、また体力がなくなってしまいましたorz なので、今回は、公開キー配布編を解説したいと思います。 まず、公開

    PGP(GnuPG)の導入方法教えてやるから、いい加減、ファイルをZIP暗号化して、別メールでパスワードを送るのは、やめてくれ!~公開キー配布編~ - Qiita
  • PGP(GnuPG)の導入方法教えてやるから、いい加減、ファイルをZIP暗号化して、別メールでパスワードを送るのは、やめてくれ! ~セットアップ編~ - Qiita

    PGP(GnuPG)の導入方法教えてやるから、いい加減、ファイルをZIP暗号化して、別メールでパスワードを送るのは、やめてくれ! ~セットアップ編~emailPGP暗号化GnuPGセットアップ このエントリーのきっかけ いろいろな企業に使われている、電子メール(以下、メール)でのファイル送信方法。 内容は、暗号化ZIPを相手に送り、別メールでパスワードを相手に送るもの。 はっきり言って意味ないじゃんというのが、私の持論です。 なぜ意味ないのか? 過去の私のブログにも書いてあるが、 同じメールアドレス宛に送信されていること そりゃそうだけど、同じメールアドレスに送っているので、意味ないです。 もし、意味があるとしたら、パスワードを送る際にメールアドレスを確認できることくらいです。 ZIPのパスワードが平文であること 当然だけど、ZIPのパスワードをメールで送るときは、平文です。 なので、添付

    PGP(GnuPG)の導入方法教えてやるから、いい加減、ファイルをZIP暗号化して、別メールでパスワードを送るのは、やめてくれ! ~セットアップ編~ - Qiita
  • そのクラウド、信用できますか? 〜プログラムを暗号化したまま実行する〜

    この文章では「2019年度未踏IT人材発掘・育成事業」に採択された 「準同型暗号によるバーチャルセキュアプラットフォームの開発」について解説します。 可能な限り事前知識を仮定せずに書きましたので、ぜひご一読ください。 なお表示上の執筆者は「艮鮟鱇」となっていますが、実際の執筆はプロジェクトの採択メンバー全員に よります。 「クラウド」という言葉が市民権を獲得して久しくなりました。 一口に「クラウド」と言っても様々ですが、その多くは「他者に処理を移譲する仕組み」と 簡潔にまとめられます。例えば、GPUを使う機械学習のプログラムを書いたが手元にはGPUが無い。 そこでGPUが搭載されたクラウド上のマシンを 借りて代わりに実行してもらう、といったケースが分かりやすいでしょう。 (画像は全てクリックで拡大します) このとき、処理を実行するにあたって必要なプログラムとデータは、 もちろんクラウドに送

    そのクラウド、信用できますか? 〜プログラムを暗号化したまま実行する〜
  • 無料で画像に秘密のメッセージを隠したりテキストやファイルを暗号化可能な「Secret Messager」

    「Secret Messager」は文章やファイルを暗号化したり元に戻したりするだけではなく、画像に文章を暗号化して隠したり、画像に隠した文章を取り出したりまで可能なフリーソフトです。 Software - Free online tool to encrypt messages with AES 256 http://secretmessages.online/Home/Software Secret Messagerを使うには、公式ページからソフトウェアをダウンロードする必要があります。公式ページにアクセスして、「Download Now」からソフトウェアをダウンロードします。 ダウンロードした「SecretMessager-1.0.0.exe」をダブルクリックして、インストーラーを起動します。 インストーラーが起動したら、「Next」をクリック。 Secret Messagerは初期

    無料で画像に秘密のメッセージを隠したりテキストやファイルを暗号化可能な「Secret Messager」
  • クラウドを支えるこれからの暗号技術

    『クラウドを支えるこれからの暗号技術書は公開鍵暗号に続く、新しい暗号技術を紹介します。 対象読者 『暗号技術入門』(結城浩)を読んで最先端暗号理論はどうなってるのだろうと興味を持った方 「入門書に載っているRSA暗号は安全ではないので使ってはいけない」ということを知らない方 Hash(secret key||message)で認証してはいけない理由(SHA-2とSHA-3の違い)を知りたい方 楕円曲線暗号の楕円曲線を直感的に把握したい方 最近ちょいちょい聞く「準同型暗号」って何だろうと思っている方 楕円曲線といえばy2 = x3 + ax + bという式が唐突に出てくるけど何故なのと疑問に思った方 EdDSAって何? ECDSAの書き間違い?と思ったらEdwards曲線が出てきて、それ何だろうと思った方 暗号で使われる数学の話をきちんと理解したい方 などなど。 購入 秀和システム 正

    クラウドを支えるこれからの暗号技術
  • web.configの暗号化 - Qiita

    IISの制御ファイルであるweb.configにはDB接続情報などが平文のまま格納されていますので、流出しないように注意する必要があります。 この問題を回避するためにMicrosoftからaspnet_regiisという暗号化ツールが提供されています。 aspnet_regiisとは何か aspnet_regiisは.NET Frameworkに同梱されているツールで、主にASP.NETをIISに登録するためのツールですが、web.configファイルを暗号化する機能もあります。 aspnet_regiis格納場所 .NET Frameworkの各バージョンのフォルダにあります。 バージョン 格納場所

    web.configの暗号化 - Qiita
  • 暗号化と圧縮、どちらを先にするべきか? | POSTD

    こんなことを想像してみてください。 あなたは大企業で働いています。仕事はかなり退屈です。端的に言えば、あなたの顔も見たくないという経理担当の3人しか使わないようなアプリケーションのために定型的なコードを書いて、才能を無駄にしているという状況です。 あなたが当に情熱を注げるのはセキュリティです。毎日、 r/netsec を読み、仕事の後にはバグ報奨金プログラムに参加しています。ここ3カ月間は手の込んだ株式取引ゲームをプレイし、報奨金を得ています。ヒープベースのバッファオーバーフローを発見し、優良株を選ぶ手助けとなるAVRシェルコードをいくつか書いたからです。 あなたが取り組んできたビデオゲームが、実は巧妙な偽装のリクルートツールであったと判明し、全てが変わります。世界最高のセキュリティコンサルタント会社、Mont Piperが人材を募集していて、あなたは面接に行くことになったのです! 飛行

    暗号化と圧縮、どちらを先にするべきか? | POSTD
  • 新しいTLSの暗号方式ChaCha20-Poly1305 - ぼちぼち日記

    Disclaimer エントリは、近々IETFで標準化される予定の新しいTLSの暗号方式 ChaCha20-Poly1305 について解説したものです。 来なら、新しい暗号方式を紹介するいうことは、その暗号の安全性についてもちゃんと解説しないといけないかもしれません。しかし一般的に暗号の安全性評価はとても難しく、専門家でない者が暗号の安全性について軽々しく書くわけにはいかないなとも思いました。いろいろ悩みましたが、結局無用な誤解を避けるため、エントリーでは ChaCha20-Poly1305 の安全性に関する記載を最小限に留めています。 今回紹介する ChaCha20-Poly1305 は、これまでも様々な暗号研究者の評価を受けている暗号方式ですが、まだNISTの標準や某国の推奨暗号リストに掲載されるといった、いわゆる特定機関のお墨付きをもった暗号方式ではありません。記載内容が中途半

    新しいTLSの暗号方式ChaCha20-Poly1305 - ぼちぼち日記
  • TeslaCrypt(vvvウイルス)によって暗号化されたファイルの復号手順メモ

    国内でも昨年末に話題になったランサムウェア「TeslaCrypt」通称「vvv」ウイルス。 ブログでも実際に感染してみるというエントリーを掲載しました。 このマルウェアに感染すると特定の拡張子を持つファイルが暗号化され金銭を要求されるのですが そちらの復号方法について海外サイトで言及されていましたので ブログでも手順を参考にしならが復号の可否を検証しました。 一部、一次情報のサイトとは手順が異なる部分があります。 今回用いる復号スクリプトは「TeslaCrack」というものでこちらで公開されています。 【環境の構築】 まず、復号するために必要な情報を収集するための環境を整えます。 まずは、復号処理を行うスクリプトがPythonで記述されているため現時点での最新版である「2.7.11」をインストールしました。 インストールが完了したら次に「easy_install」をダウンロードし以下の

    TeslaCrypt(vvvウイルス)によって暗号化されたファイルの復号手順メモ