というのはさておき、Kanamozicってのを作ってみましたw
Android
APK:https://drive.google.com/file/d/0BwmjxbaUsYbeUzJYRHNwdDk1ZFE/edit?usp=docslist_api
ソースコード:https://github.com/nao20010128nao/Kanamozic
※ソースコードのこれはちゃんと改造すればPCでも動かせます。
Javascript(HTML向け)
ソースコード:https://github.com/nao20010128nao/Kanamozic.js
デモ:http://nao20010128nao.github.io/kanamozic/
.NET Framework(Windows)
ソースコード:https://github.com/nao20010128nao/Kanamozic.NET
仕様
変換
入力は変換する文字列(string)とkey(byte)
- 入力された文字列が、次の文字だけで構成されているかを調べる:"あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわをんアイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヲン"
- 1.で"はい"の場合(ここから)
- 1.の文字列から、入力の一文字ごとにその場所を探し、その場所にkeyを足す
- 3.の場所を1.の文字列に照らし合わせ、それを一つの文字列にする
- 4.の最初に"が"を足して完了
- 1.で"いいえ"の場合(ここから)
- 入力された文字列を、UTF-8のBase64文字列にし(パディング、改行文字なし)、対応する文字に変換する(対応する文字はコードを参照)
- 4.の最初に"ぎ"を足して完了
復号
入力は復号する文字列(string)とkey(byte)
定数A="あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわをんアイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヲン"
なんかおかしい
どうでも良い裏話
入力は復号する文字列(string)とkey(byte)
定数A="あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわをんアイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヲン"
- 入力された文字列が、"が"か"ぎ"で始まるか調べる
- 1.で"が"の場合(ここから)
- 定数Aから、入力の一文字ごとにその場所を探し、その場所からkeyを引く
- 3.の場所を定数Aに照らし合わせ、それを一つの文字列にする
- 完了
- 1.で"ぎ"の場合(ここから)
- 入力された文字列を、対応する文字に変換し、(対応する文字はコードを参照)Base64文字列にする
- 7.のBase64文字列を、byte配列にし、UTF-8で文字列に変換する
- 完了
Javascript版はJavaコードからほとんどコピペして作ってた