プチコン3号&BIGまとめWiki

投稿プログラム : ファイル暗号化プログラム「Phoenix」

2018年8月12日投稿 / 投稿者 : 上溝私設総合研究所 / タグ : 投稿プログラム 実用ツール 暗号 ファイル

概要

これは最近ふと思い付いて作成したプログラムです。
これを使えば大事な情報を保護することができます。

事の始まり

最初はBIN$という2進数の文字列に変換するプログラムを作成して
遊んでいたら、2進数で文字列を暗号化できないか、
と思い立ったのがきっかけでした。
その後2進数では10進数に変換するのが不可能とわかり、
16進数ではどうかと模索していたところ、ふと思い付いたのです。

文字をASCで数値して足し算をしてCHR$で文字に変換したら行けるかも...と。

そこからこのシステムの研究を開始しました。
一文字ずつ暗号化して、一行できたらPRGSET$で入れ替えて
それを繰り返す事で完成しました。

更新情報 (ver1.1)

ただいま新バージョン(ver1.1)の開発を行っています。
概要は以下の通りです。

内容

・4つの鍵と6種類の計算モードの採用
 →20種類に変更(2018年8月18日)
・ストリーム暗号を採用した暗号化方式の開発
 =計算された数値はRANDOMIZEに代入されて
  乱数によりシフトする数は100以内に抑えられています。
・off by oneエラーの解消
・ボタンによるファイル選択の実装
・エラートラップの実装(2018年8月18日追加)

これらの内容を組み込んで、出来次第ver1.1を公開します。

進捗状況

進捗状況を報告致します。

4つの鍵の開発製作完了
20種類の計算モードの開発製作中
ストリーム暗号化方式の開発製作完了
off by oneエラーの解消解消完了
ボタンによるファイル選択の実装製作中
エラートラップの実装実装完了

鍵の保証範囲

鍵の保証範囲は −139000000 ~ +139000000 までです。
(0は鍵に設定出来ません。(設定すると0による除算のエラートラップが発動します。))

投票コーナー

もしよろしければDLした方は投票していただけるとありがたいです。

選択肢 投票
DLしました! 13  

公開キー

プチコン3号用の公開キーです。トップメニューの「作品公開とダウンロード」から公開キーを入力すると、作品をダウンロードすることができます。

ver1.0の公開キー
7R7EX3A4

ぜひともこの暗号化システムを役立てて、皆様のお力になれたら光栄です。
もし、よろしければコメントをお願い致します。

CHECKER FLAG (ひとことコメント)

この作品に対するコメントがあれば一言どうぞ。(作品に直接関係ない質問や雑談は掲示板へ)

  • しょうご : これは凄いですね。ぜひ自作ゲーム等に活用させていただいてもよろしいでしょうか? (2018/08/13 (月) 15:14:16)
  • KPCL : 活用してもらって構いません (2018/08/13 (月) 15:28:31)
  • KPCL : こちらとしても嬉しいです (2018/08/13 (月) 15:28:45)
  • しょうご : ありがとうございます! (2018/08/13 (月) 17:20:58)
  • 天郷思音 : ようするにシーザー暗号かな? (2018/08/13 (月) 18:29:42)
  • 天郷思音 : まず1文字ごとに同じ計算をしてるので端的に言って弱い。あとファイル名を上画面に表示するならボタン操作で選べるほうが良いのでは? (2018/08/13 (月) 18:40:10)
  • 天郷思音 : あと127行目でFOR J=0 TO Lというのは典型的なOff-by-oneエラーでしょうか?? (2018/08/13 (月) 18:46:18)
  • 天郷思音 : さらに致命的な欠陥があってね、鍵が衝突*1しまくる。 (2018/08/14 (火) 14:00:17)
  • 天郷思音 : 鍵は3要素の実数型配列変数なので見かけ上64×3=192bitの鍵に見えるんだけど (2018/08/14 (火) 14:01:40)
  • 天郷思音 : たとえば、8,10,1919と10,8,1919と40,25,999と25,40,999では同じ鍵になる。もちろん逆算すればいくらでもある。 (2018/08/14 (火) 14:03:49)
  • 天郷思音 : したがって実質的な強度は192bitよりもはるかに弱い。これだけの問題があるにもかかわらず、しょうごさんは本気で「採用」と言っているのだろうか? (2018/08/14 (火) 14:05:50)
  • 天郷思音 : そもそも、プチコン3号の文字コードは0から65535までしかない。たとえば、999999みたいな大きな数を足したところであふれた分は無視される。1文字1文字に同じ数を足す現在の設計では、鍵をどんなに長くしたところで16bitを越える強度は実現不可能。 (2018/08/14 (火) 14:16:16)
  • しょうご : そこまで問題があったんですね。 (2018/08/14 (火) 14:23:00)
  • しょうご : SmileBASIC自体も意外と制約が多いんですよね。 (2018/08/14 (火) 14:23:33)
  • 天郷思音 : 問題点ばかり書いてきたけど、プログラムの書き方としてはOPTION STRICTやインデントを用いてるなど評価点もあるし、改良されれば実用ツールになれる可能性はあるね。 (2018/08/14 (火) 14:57:59)
  • 名無しさん : 全く関係ないけど天郷思音さんのたとえばの数値が汚い (2018/08/14 (火) 22:44:48)
  • KPCL : 遅くなってしまって申し訳ございません。このプログラムの主です。このプログラムは64*3するのではなく、ASCIIコード+((DAT[0]*DAT[1])+DAT[2])としているので、実質ASCIIコード+計算された数値、になります。誤解するようなプログラムを書いてしまって申し訳ございません。 (2018/08/15 (水) 14:38:14)
  • KPCL : 新バージョンの開発を始めました。詳しくはページ中程の「更新情報」をご覧ください。 (2018/08/17 (金) 14:34:42)
  • クロマリオ : ものすげえボロクソ書くやんw (2018/08/17 (金) 15:31:04)
  • 名無しさん : ちゃんと指摘されたところ直そうとしててえらヨ (2018/08/17 (金) 17:19:00)
  • KPCL : 「更新情報」の欄を更新しました。詳しくは更新情報をご覧ください。 (2018/08/18 (土) 13:45:58)
  • KPCL : 更新情報の名称が変更されました。新しい名称は「更新情報(ver1.1)」です。 (2018/08/18 (土) 14:03:08)
  • KPCL : 投票コーナーを新設しました。よろしければ投票をお願い致します。 (2018/08/18 (土) 14:25:14)
  • KPCL : 更新情報 (ver1.1)に進捗状況を追加しました。詳しくはそちらをご覧下さい。 (2018/09/09 (日) 12:58:33)

メニュー 【3号】

ヘルプ

リンク

最近の更新

最近の人気ページ

オンライン情報

  • 現在同時に 1 人がこのサイトを見ています
  • このページはこれまでに 1261 回、本日は 1 回、昨日は 0 回閲覧されました

ページの先頭に戻る

*1 違う鍵で同じ暗号文ができること

表示モード : [ スマホ・3DS対応表示 | クラシック表示 ]
PukiWiki 1.4.7 Copyright © 2001-2006 PukiWiki Developers Team. License is GPL. Based on "PukiWiki" 1.3 by yu-ji
ページの処理時間 : 0.135 秒 | このページの最終更新 : 2022/09/20 (火) 12:48:46 (565d) | ログイン
Copyright(C) 2011-2014 プチコンまとめWiki ◆1sxkymI8ji30