2023-04-01
AIの進化によって真贋の見極めは難しくなるばかり。一方、信頼を実現する公開鍵暗号技術は確立されており、そのシンプルな応用が必要とされています。

ボストンクラブ neoplugを活用した、福井県工業技術センターで開発している、ARグラス
かけるだけでデジタル情報が マラソン向けのARグラス実証実験へ【福井】(福井テレビ) - Yahoo!ニュース


本日開発した「IchigoGlass」は、IchigoJamに信頼を実現するSEC拡張コマンドを追加した、メガネなどウェアラブル用軽量OSです。ホンモノを見極める目の実現を助けます。


RUN on IchigoJam web
(未実装なので途中でエラーとなります)
現代のトラスト(信頼)を実現する、楕円曲線による公開鍵暗号技術は、良質な乱数が肝。IchigoJam BASICで、自分自身のタイミングでスペースキーを64回押すことで、乱数に頼らない32byte、256bitの乱数を生成します。(更に、楕円曲線暗号での計算に使われる前に、SHA512によっていい感じにハッシュされます)


任意のデータが検証可能となる、SEC.SIGNとSEC.VERIFYコマンドの仕様を決めました。

100 S=#700:'PRIKEY 32 110 P=#720:'PUBKEY 32 120 G=#740:'SIGN 64 130 M=#780:'MESSAGE 140 L=6:'MESLEN 200 CLS:?"HIT SPACE TO MAKE SECURE PRIKEY!" 201 FORI=0TO63:FORJ=0TO1:N=RND(16):?CHR$(8);HEX$(N);:J=BTN(32)||BTN():NEXT:WAIT9:?HEX$(N);:POKES+I,N:NEXT:?CHR$(8) 205 FORI=0TO31:POKES+I,PEEK(S+I*2)<<4+PEEK(S+I*2+1):NEXT 206 'FORI=0TO31:?HEX$(PEEK(S+I),2);:NEXT 210 SEC.PUBKEY P,S 220 COPY M,"HELLO!",L 230 SEC.SIGN G,S,M,L 240 ?"VERIFY:";SEC.VERIFY(G,P,M,L)

秘密鍵32byteを元に、公開鍵32byteを作成し、任意のデータ(今回はHELLO!の6文字)の電子署名を計算し、試しに検証するまでのIchigoJam BASICプログラムです。


「sec.js」

IchigoJamでの実装が待ちきれない方は、JavaScriptによる互換実装「sec.js」をどうぞ!
BASICで慣れたこどもたちならなんとなく読めるはず。

創ろう、信頼が当たり前の世の中!
IchigoJam、本日で9才になりました!

links
- 2014年 目指すはMSX! Raspberry Pi より安価な IchigoJam 発表!
- 2015年 創る人を創ろう! Pepper より安価な こどもロボットPaprika 発表!
- 2016年 MSXになりたい「こどもパソコンIchigoJam」あの起動ロゴを搭載!
- 2017年 IchigoJam Zero the World's Lightest PC 0g 150yen for IchigoJam Things!
- 2018年 盲聾のこどもたちにもプログラミングを! 体で感じる体表点字、IchigoBrailleでブラインドプログラミング、IchigoJam 4th Birthday!
- 2019年 IchigoJam for MSX!? はじめてパソコン CANON V-10 と IchigoJam 5th anniversary!
- 2020年 こどもパソコン通信のホストを開局! 新型コロナウイルスダッシュボード for IchigoJam 提供開始、6才になりました!
- 2021年 コンポジット不要、モールス信号で組むプログラミング IchigoJam morse 誕生! IchigoJam 7才
- 2022年 テーマパーク「IchigoJam world」オープン!
- 2023年 IchigoJam with Trust、信頼をかけるメガネ、IchigoGlass

Tweet
クリエイティブ・コモンズ・ライセンス
本ブログの記事や写真は「Creative Commons — CC BY 4.0」の下に提供します。記事内で紹介するプログラムや作品は、それぞれに記載されたライセンスを参照ください。
CC BY / @taisukef / アイコン画像 / プロフィール画像 / 「一日一創」画像 / RSS