ciphr
1.0.0
Ciphr は、データのストリームに対するエンコード、デコード、暗号化、復号化、ハッシュ、その他のさまざまな操作を実行および構成するための CLI ツールです。提供されたデータ、ファイル データ、または stdin からのデータを取得し、データ ストリーム上で関数のパイプラインを実行し、結果のデータを stdout に書き込みます。これは主に情報セキュリティ領域での使用を目的として設計されており、主にフォレンジック、侵入テスト、またはキャプチャー・ザ・フラッグ・イベントのための迅速またはカジュアルなデータ操作を目的としています。おそらく他の予期せぬ用途がある可能性がありますが、含まれる暗号化関数を攻撃 (タイミング攻撃など) に対して堅牢にするための努力は行われていないため、実験的なおもちゃであると推定されるべきであり、含まれる関数をいかなる環境でも使用しないことをお勧めします。 -line セキュリティ メカニズム。
$ ciphr ' "abc" '
abc
$ ciphr ' "abc" ' hex
616263
$ ciphr ' "abc" ' hex ~ hex
abc
$ ciphr ' "616263" ' ~ hex
abc
$ ciphr 0x616263
abc
$ ciphr 0x616263 hex
616263
$ ciphr 0b10101010 bin
10101010
$ ciphr 0b10101010 hex
aa
$ ciphr 255 hex
ff
$ ciphr 65
A
$ ciphr ' "" ' md5 hex
d41d8cd98f00b204e9800998ecf8427e
$ echo -n " " | ciphr md5 hex
d41d8cd98f00b204e9800998ecf8427e
$ ciphr ' "abc" ' sha1 hex
a9993e364706816aba3e25717850c26c9cd0d89d
$ echo -n " abc " | ciphr sha1 | xxd -ps
a9993e364706816aba3e25717850c26c9cd0d89d
$ echo -n " abc " | ciphr ' xor["abc"] hex '
000000
$ echo -n " abc " | ciphr xor[0x01] hex
606362
$ echo -n " abc " | ciphr xor[0x01]
`cb
$ echo -n " abc " | ciphr xor[0x020304]
cag
$ echo -n " abc " | ciphr ' aes128cbc["super secret key"] hex '
1e98110410ea0aa59a31ddc462d720d07e1e01268e405ee9fba29b3f91752e0c
$ echo -n " abc " | ciphr ' aes128cbc["super secret key"] hex ~hex ~aes128cbc["super secret key"] '
abc
$ ciphr @/etc/hosts
127.0.0.1 localhost
$ ciphr @/etc/hosts md5 hex
8f4491642052129e98cc211b4f32d9c5
$ ciphr @/etc/hosts xor[0x01]
036/1/1/mnb`minru
$ ciphr @/etc/hosts aes-128-cbc[@/etc/hosts] hex
3033c8627781ae2152d0b25f1acd3397161d5e8462164716539502ad908163e13eec1a73ee03ba89a877ac49fd04d7a3
$ ciphr @/etc/hosts aes-128-cbc[@/etc/hosts] ~ aes-128-cbc[@/etc/hosts]
127.0.0.1 localhost
$ ciphr @/etc/hosts aes-128-cbc[0xdeadbeefdeadbeefdeadbeefdeadbeef] hex
92638d3f10a303938b48bd4a108744ed4216c99b005ddc19cce752af53ef089be1e43a446fda55c4e76036f31612459f
$ ciphr @/etc/hosts aes-128-cbc[0xdeadbeefdeadbeefdeadbeefdeadbeef] ~ aes-128-cbc[0xdeadbeefdeadbeefdeadbeefdeadbeef]
127.0.0.1 localhost
$ gem install ciphr
Fetching: ciphr-0.0.1.gem (100%)
Successfully installed ciphr-0.0.1
Parsing documentation for ciphr-0.0.1
Installing ri documentation for ciphr-0.0.1
Done installing documentation for ciphr after 2 seconds
1 gem installed
バンドラーをインストールする必要があります ( gem install bundler
)
git clone https://github.com/frohoff/ciphr.git
cd ciphr
bundle install
bundle exec rake install
$ ciphr -v -h
Usage: ciphr [options] [spec]
-h, --help
-v, --verbose
-n, --no-newline
-N, --newline
-x, --xargs-mode
-0, --null
Available Functions: aliases ([args])
md4 (input)
md5 (input)
sha (input)
sha1 (input)
sha224 (input)
sha256 (input)
sha384 (input)
sha512 (input)
hmac-md4, hmacmd4 (input, key)
hmac-md5, hmacmd5 (input, key)
hmac-sha, hmacsha (input, key)
hmac-sha1, hmacsha1 (input, key)
hmac-sha224, hmacsha224 (input, key)
hmac-sha256, hmacsha256 (input, key)
hmac-sha384, hmacsha384 (input, key)
hmac-sha512, hmacsha512 (input, key)
aes-128-cbc, aes128cbc (input, key)
aes-128-cbc-hmac-sha1, aes128cbchmacsha1 (input, key)
aes-128-cbc-hmac-sha256, aes128cbchmacsha256 (input, key)
aes-128-cfb, aes128cfb (input, key)
aes-128-cfb1, aes128cfb1 (input, key)
aes-128-cfb8, aes128cfb8 (input, key)
aes-128-ctr, aes128ctr (input, key)
aes-128-ecb, aes128ecb (input, key)
aes-128-ofb, aes128ofb (input, key)
aes-128-xts, aes128xts (input, key)
aes-192-cbc, aes192cbc (input, key)
aes-192-cfb, aes192cfb (input, key)
aes-192-cfb1, aes192cfb1 (input, key)
aes-192-cfb8, aes192cfb8 (input, key)
aes-192-ctr, aes192ctr (input, key)
aes-192-ecb, aes192ecb (input, key)
aes-192-ofb, aes192ofb (input, key)
aes-256-cbc, aes256cbc (input, key)
aes-256-cbc-hmac-sha1, aes256cbchmacsha1 (input, key)
aes-256-cbc-hmac-sha256, aes256cbchmacsha256 (input, key)
aes-256-cfb, aes256cfb (input, key)
aes-256-cfb1, aes256cfb1 (input, key)
aes-256-cfb8, aes256cfb8 (input, key)
aes-256-ctr, aes256ctr (input, key)
aes-256-ecb, aes256ecb (input, key)
aes-256-ofb, aes256ofb (input, key)
aes-256-xts, aes256xts (input, key)
aes128 (input, key)
aes192 (input, key)
aes256 (input, key)
bf (input, key)
bf-cbc, bfcbc (input, key)
bf-cfb, bfcfb (input, key)
bf-ecb, bfecb (input, key)
bf-ofb, bfofb (input, key)
camellia-128-cbc, camellia128cbc (input, key)
camellia-128-cfb, camellia128cfb (input, key)
camellia-128-cfb1, camellia128cfb1 (input, key)
camellia-128-cfb8, camellia128cfb8 (input, key)
camellia-128-ecb, camellia128ecb (input, key)
camellia-128-ofb, camellia128ofb (input, key)
camellia-192-cbc, camellia192cbc (input, key)
camellia-192-cfb, camellia192cfb (input, key)
camellia-192-cfb1, camellia192cfb1 (input, key)
camellia-192-cfb8, camellia192cfb8 (input, key)
camellia-192-ecb, camellia192ecb (input, key)
camellia-192-ofb, camellia192ofb (input, key)
camellia-256-cbc, camellia256cbc (input, key)
camellia-256-cfb, camellia256cfb (input, key)
camellia-256-cfb1, camellia256cfb1 (input, key)
camellia-256-cfb8, camellia256cfb8 (input, key)
camellia-256-ecb, camellia256ecb (input, key)
camellia-256-ofb, camellia256ofb (input, key)
camellia128 (input, key)
camellia192 (input, key)
camellia256 (input, key)
cast (input, key)
cast-cbc, castcbc (input, key)
cast5-cbc, cast5cbc (input, key)
cast5-cfb, cast5cfb (input, key)
cast5-ecb, cast5ecb (input, key)
cast5-ofb, cast5ofb (input, key)
des (input, key)
des-cbc, descbc (input, key)
des-cfb, descfb (input, key)
des-cfb1, descfb1 (input, key)
des-cfb8, descfb8 (input, key)
des-ecb, desecb (input, key)
des-ede, desede (input, key)
des-ede-cbc, desedecbc (input, key)
des-ede-cfb, desedecfb (input, key)
des-ede-ofb, desedeofb (input, key)
des-ede3, desede3 (input, key)
des-ede3-cbc, desede3cbc (input, key)
des-ede3-cfb, desede3cfb (input, key)
des-ede3-cfb1, desede3cfb1 (input, key)
des-ede3-cfb8, desede3cfb8 (input, key)
des-ede3-ofb, desede3ofb (input, key)
des-ofb, desofb (input, key)
des3 (input, key)
desx (input, key)
desx-cbc, desxcbc (input, key)
rc2 (input, key)
rc2-40-cbc, rc240cbc (input, key)
rc2-64-cbc, rc264cbc (input, key)
rc2-cbc, rc2cbc (input, key)
rc2-cfb, rc2cfb (input, key)
rc2-ecb, rc2ecb (input, key)
rc2-ofb, rc2ofb (input, key)
rc4 (input, key)
rc4-40, rc440 (input, key)
rc4-hmac-md5, rc4hmacmd5 (input, key)
seed (input, key)
seed-cbc, seedcbc (input, key)
seed-cfb, seedcfb (input, key)
seed-ecb, seedecb (input, key)
seed-ofb, seedofb (input, key)
aes-128-ccm, aes128ccm (input, key)
aes-128-gcm, aes128gcm (input, key)
aes-192-ccm, aes192ccm (input, key)
aes-192-gcm, aes192gcm (input, key)
aes-256-ccm, aes256ccm (input, key)
aes-256-gcm, aes256gcm (input, key)
blowfish (input, key)
id-aes128-ccm, idaes128ccm (input, key)
id-aes128-gcm, idaes128gcm (input, key)
id-aes128-wrap, idaes128wrap (input, key)
id-aes192-ccm, idaes192ccm (input, key)
id-aes192-gcm, idaes192gcm (input, key)
id-aes192-wrap, idaes192wrap (input, key)
id-aes256-ccm, idaes256ccm (input, key)
id-aes256-gcm, idaes256gcm (input, key)
id-aes256-wrap, idaes256wrap (input, key)
id-smime-alg-cms3deswrap, idsmimealgcms3deswrap (input, key)
b2, base2, bin, binary (input)
b8, base8, oct, octal (input)
b16, base16, hex, hexidecimal (input)
b32, base32, b32-std, base32-std (input)
b64, base64, b64-psq, b64-std, base64-psq, base64-std (input)
b64-ps, b64-utf7, base64-ps, base64-utf7 (input)
b64-ph, b64-file, base64-ph, base64-file (input)
b64-hu, b64-url, base64-hu, base64-url (input)
b64-duh, b64-yui, base64-duh, base64-yui (input)
b64-dh, b64-xml-name, base64-dh, base64-xml-name (input)
b64-uc, b64-xml-id, base64-uc, base64-xml-id (input)
b64-uh, b64-prog-id-1, base64-uh, base64-prog-id-1 (input)
b64-du, b64-prog-id-2, base64-du, base64-prog-id-2 (input)
b64-xh, b64-regex, base64-xh, base64-regex (input)
r2, rad2, radix2 (input)
r3, rad3, radix3 (input)
r4, rad4, radix4 (input)
r5, rad5, radix5 (input)
r6, rad6, radix6 (input)
r7, rad7, radix7 (input)
r8, rad8, radix8 (input)
r9, rad9, radix9 (input)
r10, rad10, radix10 (input)
r11, rad11, radix11 (input)
r12, rad12, radix12 (input)
r13, rad13, radix13 (input)
r14, rad14, radix14 (input)
r15, rad15, radix15 (input)
r16, rad16, radix16 (input)
r17, rad17, radix17 (input)
r18, rad18, radix18 (input)
r19, rad19, radix19 (input)
r20, rad20, radix20 (input)
r21, rad21, radix21 (input)
r22, rad22, radix22 (input)
r23, rad23, radix23 (input)
r24, rad24, radix24 (input)
r25, rad25, radix25 (input)
r26, rad26, radix26 (input)
r27, rad27, radix27 (input)
r28, rad28, radix28 (input)
r29, rad29, radix29 (input)
r30, rad30, radix30 (input)
r31, rad31, radix31 (input)
r32, rad32, radix32 (input)
r33, rad33, radix33 (input)
r34, rad34, radix34 (input)
r35, rad35, radix35 (input)
r36, rad36, radix36 (input)
deflate (input)
gzip, gz (input)
and-trunc (input, input)
or-trunc (input, input)
xor-trunc (input, input)
and (input, input)
or (input, input)
xor (input, input)
not (input)
url, uri, cgi (input)
cat, catenate (input)
repack (input, ch1, ch2)
tr, translate (input, ch1, ch2)
repl, replace (input, search, replace)
rc4-ruby (input, key)
コードをチェックアウトします:
git clone https://github.com/frohoff/ciphr.git
cd ciphr
展開された gem/project ディレクトリからコマンドを実行します。
bundle exec ruby -Ilib bin/ciphr [args]
git checkout -b my-new-feature
)git commit -am 'Add some feature'
)git push origin my-new-feature
)