- 1 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 00:48:40.500 ID:vzo5Txn40
- 任意文字列を含む有効なビットコインアドレスを生成するにはどうすればいいか考えてみ
ビットコインアドレスの形式は
[プレフィックス 1バイト] [本体データ 160ビット] [チェックサム 4バイト]
をbase58(58進数)で表現したものプレフィックスは0x00とする
チェックサムはプレフィックス+本体データをsha256に二回かけた後の先頭4バイト例:
1BitCoinDescriptionAddressadTvGDH
1MayukoMuraokaXXXXXXXXXXXXXXX5f8QCこれはどっちも有効なビットコインアドレスになってる
https://chainflyer.bitflyer.com/Address/1BitCoinDescriptionAddressadTvGDH
https://chainflyer.bitflyer.jp/Address/1MayukoMuraokaXXXXXXXXXXXXXXX5f8QC - 2 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 00:49:02.050 ID:i1q9cmKqa
- あばばばばwww
- 3 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 00:49:35.518 ID:hog4rKEi0
- わからん
- 4 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 00:49:47.100 ID:DY8yNZCO0
- 頭悪いけど来ちゃった
- 5 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 00:50:26.491 ID:g+OmKNdU0
- マイニングと同じなのでは?
- 6 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 00:50:37.905 ID:vzo5Txn40
- >>5
違うぞ
一瞬で生成できる - 9 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 00:51:35.831 ID:OVmu0I+s0
- 手順分かるならそれを実行すればいいのでは
- 11 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 00:53:25.129 ID:vzo5Txn40
- >>9
おまえらなら一瞬で方法思いつくかどうか試してる
くそ頭の悪い俺は2年前にウンウン唸りながら考えて方法を思いついた
ムラオカマユコのアドレスもその時に作ったやつ - 10 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 00:51:54.415 ID:pd9lLZ4j0
- プレフィックスは00だから上の例には表示してないって意味??
- 12 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 00:54:01.400 ID:vzo5Txn40
- >>10
0x00が先頭に来てくるとbase58で表現した時に先頭が1になる - 13 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 00:54:28.632 ID:azVsAqWS0
- なんで最初に1付けてるの
- 14 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 00:55:03.950 ID:vzo5Txn40
- >>13
アドレスの種類を識別するため
3とか他の文字のアドレスもある - 16 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 00:56:39.698 ID:vzo5Txn40
- ビットコインアドレスの説明はここに書いてある
https://www.tottemoyasashiibitcoin.net/entry/2018/02/04/165300 - 22 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 01:09:57.835 ID:xQfIi4UBM
- >>16見ると本体データ部分は公開鍵をハッシュしたものなんだろ?
逆算は無理じゃないか - 24 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 01:11:09.625 ID:vzo5Txn40
- >>22
アドレス作るのはできるけど鍵は分からないから誰もその中にあるコインは使えない - 25 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 01:16:42.236 ID:vzo5Txn40
- >>22みたいな直感に反する事実とかがあるからそれも問題をややこしくしてる気がする
- 17 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 00:59:46.216 ID:pd9lLZ4j0
- あぁそういう意味か
先頭に欲しい文字列が付いた適当な文字列を56デコードしてバイト数を調整してエンコードする - 19 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 01:03:18.267 ID:vzo5Txn40
- >>17
俺も方法忘れたけど多分そんな感じだった気がする
流石やね - 23 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 01:10:15.165 ID:vzo5Txn40
- 多分1番ややこしいのは>>17に書いてる調整の部分だろうな
ややこしいって言ってもガ●ジ俺の視点だからややこしくないかもしれん - 18 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 01:00:19.954 ID:Hqq1O4Qk0
- 計算式用意して逆算するんだろうけど仕組みがいまいち理解できない
- 20 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 01:05:11.149 ID:8hakwc1P0
- よくわからんがチェックサム付けるだけじゃないんか
- 21 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 01:06:35.705 ID:vzo5Txn40
- >>20
多分大体合ってると思う
俺が前に考えた時も単純なことしかしてなかった気がする - 26 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 01:20:51.960 ID:+ZJfEIyt0
- 単純に、目的の文字列をBase58文字列として扱ってデコードした後、チェックサムを計算して最後に追加するだけでよくね?
- 28 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 01:22:52.314 ID:vzo5Txn40
- >>26
多分そういうことなんだろうな
そういう単純なことに気付ける頭の柔軟さが羨ましい
俺みたいなガ●ジは単純なことも複雑に考えがち - 27 名前:ひみつの名無しさん 投稿日時:2020/08/17(月) 01:21:24.564 ID:+ZJfEIyt0
- 最後に追加した後、サイドBase58エンコード、な
コメント