クリプト

暗号理論ってなに?暗号通貨とどう関係があるの?

積分定数's icon'
  • 積分定数
  • 2018/04/24 05:33

こんにちは、積分定数です。数学大好き人間として避けて通れないのが暗号理論です。そこで今日は、そもそも暗号って何?どういう仕組みなの?といった点にフォーカスを当てて説明していきます。

1.そもそも暗号って何?

Content image

ウィキペディアにはこう書いてあります。

暗号とは、セキュア通信の手法の種類で、第三者が通信文を見ても特別な知識なしでは読めないように変換する、というような手法をおおまかには指す。

例えば、好きな子に向けて書いたラブレターを友達とかに見られたくないですよね。そこで「あなたがすきです」という文に特定の操作をすることで「いにちぎせくどせ」という意味不明な文字列に変えることができます。これは母音を1つずらしただけなのですが、第三者には伝わらないので十分暗号化に成功したと言えます。この「母音を1つずらす」という操作が暗号理論でいう「」に当たります。ラブレターを書く際は母音を1つずらして書くことを強くお勧めします。

2.基本的な、それでいて高度な暗号

Content image

暗号の強度とはつまり「鍵」の強さに依存します。前述の「母音を1つずらす」という鍵はちょっと賢い人なら解読してしまうかもしれません。そこで求められたのが「平文(暗号化する前の文)を暗号化するのは簡単だけど、暗号文から平文を割り出すことが難しい」というような鍵です。そんな都合のいい鍵があるわけ、、、あるんです。

皆さん、素因数分解って知ってますか?簡単に言うと全ての正の整数は素数の積で表せるってことです。素数とは「1と自分自身以外に約数を持たない数」のことです。文では分かりにくいので実際にやって見ましょう。

まずは10を素因数分解します。すると

10=2×5

と表せますよね。2と5は「1と自分自身以外に約数を持たない数」、つまり素数です。このように、全ての正の整数は素数×素数×....で表せるのです。

今みたいに10を素因数分解しろ、という話なら簡単に2×5と答えが出せますが、数が大きくなってくると素因数分解はだんだんと難しくなっていきます。例えば8633を素因数分解しろと言われたら、、

8633=89×97 (89も97も素数)

となります。こんなの、普通わかりませんよね。しかし逆に

89×97=8633

という計算は小学生でもできます。この性質を暗号に利用したのです。

そこで、「ある文を入力したら適当な巨大素数pに変換してくれる関数」を考えます。つまり「あなたがすきです」という文を入力したら何十桁もある巨大な素数に変換してくれるのです。そして鍵に使うのももちろん巨大素数。ここでは鍵の巨大素数をqとします。すると、送られてくる暗号文Nは

N=p×q

と表せますね。この暗号文Nからpとqを解読するには現代の最速コンピュータを使っても数億年かかると言われています。しかし「あなたがすきです」という文を鍵を使って暗号文Nに変換するのはとても簡単です。これが現代の暗号理論の基礎となった考え方です。

3.暗号通貨との関係性

Content image

ブロックチェーン上に記録された何桁もの数字とアルファベットの羅列を見たことはありませんか?あれは16進数によって表されたれっきとした"数字"なのです。ビットコインに使われている暗号はハッシュと呼ばれる関数によって作られています。例えば「AさんはBさんに1BTC送金した」という取引はハッシュ関数によって英数字の羅列に変換されるのです。そしてやはり16進数によって表された英数字の文字列を読み解いて、元の取引履歴を読み取ることは現代のコンピュータでは事実上不可能なのです。現代のコンピュータでは…

公開日:2018/04/24
獲得ALIS:53.63
積分定数's icon'
  • 積分定数
  • @alis-constant
好きなものは数学とブロックチェーンとプログラミング。現在は主にRuby on RailsとPythonを使っています。2017年5月参入。社会人です。

投稿者の人気記事
コメントする
コメントする
こちらもおすすめ!
Eye catch
クリプト

Eth2.0のステークによるDeFiへの影響を考える。

Like token Tip token
44.10 ALIS
Eye catch
クリプト

CoinList(コインリスト)の登録方法

Like token Tip token
15.55 ALIS
Eye catch
クリプト

バイナンスの信用取引(マージン取引)を徹底解説~アカウントの開設方法から証拠金計算例まで~

Like token Tip token
3.50 ALIS
Eye catch
クリプト

【初心者向け】JPYCを購入して使ってみました!

Like token Tip token
30.03 ALIS
Eye catch
クリプト

クリプトスペルズで入手したMCHCを引き出す方法

Like token Tip token
196.20 ALIS
Eye catch
クリプト

Uniswap v3を完全に理解した

Like token Tip token
18.92 ALIS
Eye catch
クリプト

Polygon(Matic)で、よく使うサイト(DeFi,Dapps)をまとめてみた

Like token Tip token
236.30 ALIS
Eye catch
クリプト

約2年間ブロックチェ-ンゲームをして

Like token Tip token
61.20 ALIS
Eye catch
クリプト

17万円のPCでTwitterやってるのはもったいないのでETHマイニングを始めた話

Like token Tip token
46.60 ALIS
Eye catch
クリプト

Uniswap(ユニスワップ)で$ALISのイールドファーミング(流動性提供)してみた

Like token Tip token
59.99 ALIS
Eye catch
クリプト

ジョークコインとして出発したDogecoin(ドージコイン)の誕生から現在まで。注目される非証券性🐶

Like token Tip token
38.31 ALIS
Eye catch
クリプト

【初心者向け】$MCHCの基本情報と獲得方法

Like token Tip token
32.32 ALIS