opensecret 0.0.988 → 0.0.9925
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/README.md +56 -159
- data/bin/opensecret +2 -2
- data/bin/ops +17 -2
- data/lib/extension/string.rb +14 -16
- data/lib/{interpreter.rb → interprete.rb} +53 -29
- data/lib/keytools/binary.map.rb +49 -0
- data/lib/keytools/kdf.api.rb +249 -0
- data/lib/keytools/kdf.bcrypt.rb +64 -29
- data/lib/keytools/kdf.pbkdf2.rb +92 -83
- data/lib/keytools/kdf.scrypt.rb +190 -0
- data/lib/keytools/key.64.rb +326 -0
- data/lib/keytools/key.algo.rb +109 -0
- data/lib/keytools/key.api.rb +1281 -0
- data/lib/keytools/key.db.rb +265 -0
- data/lib/keytools/{key.module.rb → key.docs.rb} +55 -0
- data/lib/keytools/key.error.rb +110 -0
- data/lib/keytools/key.id.rb +271 -0
- data/lib/keytools/key.iv.rb +107 -0
- data/lib/keytools/key.local.rb +265 -0
- data/lib/keytools/key.mach.rb +248 -0
- data/lib/keytools/key.now.rb +402 -0
- data/lib/keytools/key.pair.rb +259 -0
- data/lib/keytools/key.pass.rb +120 -0
- data/lib/keytools/key.rb +428 -298
- data/lib/keytools/keydebug.txt +295 -0
- data/lib/logging/gem.logging.rb +3 -3
- data/lib/modules/cryptology/collect.rb +20 -0
- data/lib/session/require.gem.rb +1 -1
- data/lib/usecase/cmd.rb +417 -0
- data/lib/usecase/id.rb +36 -0
- data/lib/usecase/import.rb +174 -0
- data/lib/usecase/init.rb +78 -0
- data/lib/usecase/login.rb +70 -0
- data/lib/usecase/logout.rb +30 -0
- data/lib/usecase/open.rb +126 -0
- data/lib/{interprete → usecase}/put.rb +100 -47
- data/lib/usecase/read.rb +89 -0
- data/lib/{interprete → usecase}/safe.rb +0 -0
- data/lib/{interprete → usecase}/set.rb +0 -0
- data/lib/usecase/token.rb +111 -0
- data/lib/{interprete → usecase}/use.rb +0 -0
- data/lib/version.rb +1 -1
- data/opensecret.gemspec +4 -3
- metadata +39 -33
- data/lib/exception/cli.error.rb +0 -53
- data/lib/exception/errors/cli.errors.rb +0 -31
- data/lib/interprete/begin.rb +0 -232
- data/lib/interprete/cmd.rb +0 -621
- data/lib/interprete/export.rb +0 -163
- data/lib/interprete/init.rb +0 -205
- data/lib/interprete/key.rb +0 -119
- data/lib/interprete/open.rb +0 -148
- data/lib/interprete/seal.rb +0 -129
- data/lib/keytools/digester.rb +0 -245
- data/lib/keytools/key.data.rb +0 -227
- data/lib/keytools/key.derivation.rb +0 -341
- data/lib/modules/mappers/collateral.rb +0 -282
- data/lib/modules/mappers/envelope.rb +0 -127
- data/lib/modules/mappers/settings.rb +0 -170
- data/lib/notepad/scratch.pad.rb +0 -224
- data/lib/store-commands.txt +0 -180
@@ -0,0 +1,295 @@
|
|
1
|
+
|
2
|
+
#### ###################### ####
|
3
|
+
#### Waiting for Gre Output ####
|
4
|
+
#### ###################### ####
|
5
|
+
|
6
|
+
|
7
|
+
Commands
|
8
|
+
|
9
|
+
grep -E "do_encrypt_key|do_decrypt_key|generate_shell_key_and_token|regenerate_shell_key|derive_session_crypt_key|derive_shell_identity_string" *.log
|
10
|
+
|
11
|
+
|
12
|
+
I, [2018-06-20T07:16:31.020725 #27357] INFO -- key.local | generate_shell_key_and_token | (line 81) : "### #####################################################################"
|
13
|
+
I, [2018-06-20T07:16:31.020761 #27357] INFO -- key.local | generate_shell_key_and_token | (line 82) : "### Caller Details =>> =>> key | execute | (line 83)"
|
14
|
+
I, [2018-06-20T07:16:31.020799 #27357] INFO -- key.local | generate_shell_key_and_token | (line 83) : "### #####################################################################"
|
15
|
+
I, [2018-06-20T07:16:31.024921 #27357] INFO -- key.mach | derive_shell_identity_string | (line 85) : "### #####################################################################"
|
16
|
+
I, [2018-06-20T07:16:31.024971 #27357] INFO -- key.mach | derive_shell_identity_string | (line 86) : "### Caller Details =>> =>> key.local | derive_session_crypt_key | (line 232)"
|
17
|
+
I, [2018-06-20T07:16:31.025008 #27357] INFO -- key.mach | derive_shell_identity_string | (line 87) : "### #####################################################################"
|
18
|
+
I, [2018-06-20T07:16:31.025388 #27357] INFO -- key.mach | derive_shell_identity_string | (line 90) : "Etc.getlogin() => apollo"
|
19
|
+
I, [2018-06-20T07:16:31.025438 #27357] INFO -- key.mach | derive_shell_identity_string | (line 91) : "Socket.gethostname() => warehouse"
|
20
|
+
I, [2018-06-20T07:16:31.025920 #27357] INFO -- key.mach | derive_shell_identity_string | (line 92) : "get_net_address_digits() => 192168014"
|
21
|
+
I, [2018-06-20T07:16:31.031573 #27357] INFO -- key.mach | derive_shell_identity_string | (line 93) : "derive_network_identity() => 20cf3067dec3"
|
22
|
+
I, [2018-06-20T07:16:31.034135 #27357] INFO -- key.mach | derive_shell_identity_string | (line 94) : "get_bootup_time_digits() => 20000556"
|
23
|
+
I, [2018-06-20T07:16:31.034229 #27357] INFO -- key.mach | derive_shell_identity_string | (line 95) : "Process.ppid.to_s() => 26314"
|
24
|
+
I, [2018-06-20T07:16:31.037052 #27357] INFO -- key.local | derive_session_crypt_key | (line 237) : "Shell Identity Str => 41362555000023ced7603fc02410861291esuoherawollopa"
|
25
|
+
I, [2018-06-20T07:16:31.037138 #27357] INFO -- key.local | derive_session_crypt_key | (line 238) : "Shell Id TxtLength => 49"
|
26
|
+
I, [2018-06-20T07:16:31.037186 #27357] INFO -- key.local | derive_session_crypt_key | (line 239) : "Truncate Shell Str => false"
|
27
|
+
I, [2018-06-20T07:16:31.037222 #27357] INFO -- key.local | derive_session_crypt_key | (line 240) : "Resulting IDString => 41362555000023ced7603fc02410861291esuoherawollopa"
|
28
|
+
I, [2018-06-20T07:16:35.230008 #27357] INFO -- key | do_encrypt_key | (line 410) : "### #####################################################################"
|
29
|
+
I, [2018-06-20T07:16:35.230094 #27357] INFO -- key | do_encrypt_key | (line 411) : "### Caller Details =>> =>> key.local | generate_shell_key_and_token | (line 88)"
|
30
|
+
I, [2018-06-20T07:16:35.230135 #27357] INFO -- key | do_encrypt_key | (line 412) : "### #####################################################################"
|
31
|
+
I, [2018-06-20T07:16:35.230175 #27357] INFO -- key | do_encrypt_key | (line 413) : "The BitStr Char representation of this key => 011000011010001100100111011100011001011010011001110010100010101000000110011101011011011010010101110001001111000100110001011111110101101010101101011101101111100011101001010100000101"
|
32
|
+
I, [2018-06-20T07:16:35.230232 #27357] INFO -- key | do_encrypt_key | (line 414) : "256bit Digest (Urlsafe Base64) of this key => hQvwy9Sm2PHSJ6AuDtl4dhOF1gKfR1ydKcNelRZzYu0="
|
33
|
+
I, [2018-06-20T07:16:35.230323 #27357] INFO -- key | do_encrypt_key | (line 415) : "The IncomingKey Base64 Char representation => isbrxRc4eGC6gZjDfxT2sxkK4OHPvd6LR4Zar6ssZOA@NDxaM2ZzFxi7fDDa7xUh"
|
34
|
+
I, [2018-06-20T07:16:35.230369 #27357] INFO -- key | do_encrypt_key | (line 416) : "Random IV Used for the AESs Key Encryption => Ly28cDkZ-wyEKMhXqy9Zrg=="
|
35
|
+
I, [2018-06-20T07:16:35.230488 #27357] INFO -- key | do_encrypt_key | (line 419) : "Cipher Text Produced after this Encryption => l_-BzmA3ZKVbZMpinEUlEWkHc20o8CErtrm24RwNubNXnC_hRunGQYUgPsC0WVUyBbVYIuO9W-_fL_EHgnUngRsALCvlz1xSBmH3Ab68qUI="
|
36
|
+
I, [2018-06-20T07:16:35.230628 #27357] INFO -- key | do_encrypt_key | (line 425) : "Amalgam of Binary Random IV and Ciphertext => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZW"
|
37
|
+
I, [2018-06-20T07:16:35.230671 #27357] INFO -- key | do_encrypt_key | (line 426) : "------------------------------------------------------------------------- >>>>>>"
|
38
|
+
I, [2018-06-20T07:16:35.230718 #27357] INFO -- key.local | generate_shell_key_and_token | (line 92) : "BCrypt Salt Create => mqM3yu.Bin.H.nh4l3cwoO"
|
39
|
+
I, [2018-06-20T07:16:35.230756 #27357] INFO -- key.local | generate_shell_key_and_token | (line 93) : "Obfuscate ShellKey => 011000011010001100100111011100011001011010011001110010100010101000000110011101011011011010010101110001001111000100110001011111110101101010101101011101101111100011101001010100000101"
|
40
|
+
I, [2018-06-20T07:16:35.230797 #27357] INFO -- key.local | generate_shell_key_and_token | (line 94) : "EncryptedKey Crypt => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZW"
|
41
|
+
I, [2018-06-20T07:16:35.230833 #27357] INFO -- key.local | generate_shell_key_and_token | (line 95) : "Session Token Unit => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZWOowc3l4hn.H.niB.uy3Mqm"
|
42
|
+
I, [2018-06-20T07:17:05.853753 #27607] INFO -- key | do_encrypt_key | (line 410) : "### #####################################################################"
|
43
|
+
I, [2018-06-20T07:17:05.853850 #27607] INFO -- key | do_encrypt_key | (line 411) : "### Caller Details =>> =>> key.api | recycle_keys | (line 310)"
|
44
|
+
I, [2018-06-20T07:17:05.853891 #27607] INFO -- key | do_encrypt_key | (line 412) : "### #####################################################################"
|
45
|
+
I, [2018-06-20T07:17:05.853929 #27607] INFO -- key | do_encrypt_key | (line 413) : "The BitStr Char representation of this key => 00001010011110001010010001101010011111110011010000100110100111110001010010000111101001000000110101000000001001011001111001001000010001110011101111101100110101100000111100111011010111111101110000101010111011001000011011101011000111000011000101001011100101100111011010101000111110101011111110010000100001010100011110100101101110100101001000000110111100010101101101000110100110010100010001101110001100110000100110000111011000000111110011011000110101011111110111010010111110001100011001101001101001010011010011011101"
|
46
|
+
I, [2018-06-20T07:17:05.853985 #27607] INFO -- key | do_encrypt_key | (line 414) : "256bit Digest (Urlsafe Base64) of this key => -RYLRFsfr92eq_K_w5FeAUTwgsQLIcZIk2mxCmhoFyM="
|
47
|
+
I, [2018-06-20T07:17:05.854076 #27607] INFO -- key | do_encrypt_key | (line 415) : "The IncomingKey Base64 Char representation => CVcyceOj3UZSkP6g@ZyilcKL9jLjy0Bn9EWyQiYYGyarBwr2f7%Qg6AgpqhiJ14Q"
|
48
|
+
I, [2018-06-20T07:17:05.854128 #27607] INFO -- key | do_encrypt_key | (line 416) : "Random IV Used for the AESs Key Encryption => zTEt2_SF3ZszGGcgu8zlsA=="
|
49
|
+
I, [2018-06-20T07:17:05.854268 #27607] INFO -- key | do_encrypt_key | (line 419) : "Cipher Text Produced after this Encryption => 7GhAsfOQyTI6NZcr3Acq94emTV7m9P-zIG4Rw_KXz66bgPHF_AsDuEiK-ZAt0gQylUSAFzHo-BR1bW8PVNWOaHbsB_HjNzOc934zJtTZLRM="
|
50
|
+
I, [2018-06-20T07:17:05.854387 #27607] INFO -- key | do_encrypt_key | (line 425) : "Amalgam of Binary Random IV and Ciphertext => v6fhUilKXNMvOOSV4DvZMEdGL5zv@c@7E0og1xqz1pTzj@2TCp6iM794fSJ7ZDP48rBddbq5aQR3Hp8L5%3fcjwfV9SdyJVI%o2pB26w08RUQabdrvSvFJ%Pc7YIUle6"
|
51
|
+
I, [2018-06-20T07:17:05.854427 #27607] INFO -- key | do_encrypt_key | (line 426) : "------------------------------------------------------------------------- >>>>>>"
|
52
|
+
I, [2018-06-20T07:17:45.388202 #27923] INFO -- key | do_decrypt_key | (line 476) : "### #####################################################################"
|
53
|
+
I, [2018-06-20T07:17:45.388284 #27923] INFO -- key | do_decrypt_key | (line 477) : "### Caller Details =>> =>> key.api | do_login | (line 443)"
|
54
|
+
I, [2018-06-20T07:17:45.388323 #27923] INFO -- key | do_decrypt_key | (line 478) : "### #####################################################################"
|
55
|
+
I, [2018-06-20T07:17:45.388360 #27923] INFO -- key | do_decrypt_key | (line 479) : "Amalgam of Binary Random IV and Ciphertext => v6fhUilKXNMvOOSV4DvZMEdGL5zv@c@7E0og1xqz1pTzj@2TCp6iM794fSJ7ZDP48rBddbq5aQR3Hp8L5%3fcjwfV9SdyJVI%o2pB26w08RUQabdrvSvFJ%Pc7YIUle6"
|
56
|
+
I, [2018-06-20T07:17:45.388397 #27923] INFO -- key | do_decrypt_key | (line 480) : "The Base64 Char representation of this key => 00001010011110001010010001101010011111110011010000100110100111110001010010000111101001000000110101000000001001011001111001001000010001110011101111101100110101100000111100111011010111111101110000101010111011001000011011101011000111000011000101001011100101100111011010101000111110101011111110010000100001010100011110100101101110100101001000000110111100010101101101000110100110010100010001101110001100110000100110000111011000000111110011011000110101011111110111010010111110001100011001101001101001010011010011011101"
|
57
|
+
I, [2018-06-20T07:17:45.388461 #27923] INFO -- key | do_decrypt_key | (line 481) : "256bit Digest (Urlsafe Base64) of this key => -RYLRFsfr92eq_K_w5FeAUTwgsQLIcZIk2mxCmhoFyM="
|
58
|
+
I, [2018-06-20T07:17:45.388917 #27923] INFO -- key | do_decrypt_key | (line 496) : "The OutgoingKey Base64 Char representation => CVcyceOj3UZSkP6g@ZyilcKL9jLjy0Bn9EWyQiYYGyarBwr2f7%Qg6AgpqhiJ14Q"
|
59
|
+
I, [2018-06-20T07:17:51.050189 #27923] INFO -- key | do_encrypt_key | (line 410) : "### #####################################################################"
|
60
|
+
I, [2018-06-20T07:17:51.050278 #27923] INFO -- key | do_encrypt_key | (line 411) : "### Caller Details =>> =>> key.api | recycle_keys | (line 310)"
|
61
|
+
I, [2018-06-20T07:17:51.050317 #27923] INFO -- key | do_encrypt_key | (line 412) : "### #####################################################################"
|
62
|
+
I, [2018-06-20T07:17:51.050358 #27923] INFO -- key | do_encrypt_key | (line 413) : "The BitStr Char representation of this key => 10010111000101110100110011110111101101100011010001111100110000110001000000011111011001111101100110110100000000000000101110111010001101001000000100100001011100111011001111111100000110100100111001101011111111101100000100111101100111100100011011100111000100010111111100111010011001111001011101001011001111010100101111100011001110000110111011001000111011110000000011100100111001011000110011100111100110101110110110001011111110011110101000001011000010010100011011010101000100101110111001110101101111001011111110101010"
|
63
|
+
I, [2018-06-20T07:17:51.050413 #27923] INFO -- key | do_encrypt_key | (line 414) : "256bit Digest (Urlsafe Base64) of this key => lvHyYL3wa4o-AW8zKcUHJXfOdQpk-zvbSBUKiFY2BqY="
|
64
|
+
I, [2018-06-20T07:17:51.050505 #27923] INFO -- key | do_encrypt_key | (line 415) : "The IncomingKey Base64 Char representation => L81G0yQKLWFRTMq5Bi%5sTHzKZi5aVfYozcgHsQPH%foRvfX899ruybvzrmVN5tB"
|
65
|
+
I, [2018-06-20T07:17:51.050553 #27923] INFO -- key | do_encrypt_key | (line 416) : "Random IV Used for the AESs Key Encryption => 2ZyunX6ee_rr936fN1smCw=="
|
66
|
+
I, [2018-06-20T07:17:51.050654 #27923] INFO -- key | do_encrypt_key | (line 419) : "Cipher Text Produced after this Encryption => -gCsGq-FFKJpSk7go1K3WZHsFToOzuGHEAwA-DJ7NBzE8k4w5NEIUBm_njyO6pRajp7cgtwodDUMVV-U5wMvaKqA8OB8yl0lOFxJih1-Wgs="
|
67
|
+
I, [2018-06-20T07:17:51.050798 #27923] INFO -- key | do_encrypt_key | (line 425) : "Amalgam of Binary Random IV and Ciphertext => UN74FgyTTimmxXybn2M8WiGam9upRAlHtIjEr1nlh28AQ9IyBMQRRdacaJV7TvLSdJsEcE6AWKaNpCrD04uIoGyTX35S1zL2BKwbZESB5UHuVJBVbcj%s6RSlkG%bZG5"
|
68
|
+
I, [2018-06-20T07:17:51.050839 #27923] INFO -- key | do_encrypt_key | (line 426) : "------------------------------------------------------------------------- >>>>>>"
|
69
|
+
I, [2018-06-20T07:17:51.051712 #27923] INFO -- key.local | regenerate_shell_key | (line 157) : "### #####################################################################"
|
70
|
+
I, [2018-06-20T07:17:51.051756 #27923] INFO -- key.local | regenerate_shell_key | (line 158) : "### Caller Details =>> =>> key.api | do_login | (line 472)"
|
71
|
+
I, [2018-06-20T07:17:51.051792 #27923] INFO -- key.local | regenerate_shell_key | (line 159) : "### #####################################################################"
|
72
|
+
I, [2018-06-20T07:17:51.051969 #27923] INFO -- key.mach | derive_shell_identity_string | (line 85) : "### #####################################################################"
|
73
|
+
I, [2018-06-20T07:17:51.052009 #27923] INFO -- key.mach | derive_shell_identity_string | (line 86) : "### Caller Details =>> =>> key.local | derive_session_crypt_key | (line 232)"
|
74
|
+
I, [2018-06-20T07:17:51.052045 #27923] INFO -- key.mach | derive_shell_identity_string | (line 87) : "### #####################################################################"
|
75
|
+
I, [2018-06-20T07:17:51.052128 #27923] INFO -- key.mach | derive_shell_identity_string | (line 90) : "Etc.getlogin() => apollo"
|
76
|
+
I, [2018-06-20T07:17:51.052178 #27923] INFO -- key.mach | derive_shell_identity_string | (line 91) : "Socket.gethostname() => warehouse"
|
77
|
+
I, [2018-06-20T07:17:51.052624 #27923] INFO -- key.mach | derive_shell_identity_string | (line 92) : "get_net_address_digits() => 192168014"
|
78
|
+
I, [2018-06-20T07:17:51.052794 #27923] INFO -- key.mach | derive_shell_identity_string | (line 93) : "derive_network_identity() => 20cf3067dec3"
|
79
|
+
I, [2018-06-20T07:17:51.054430 #27923] INFO -- key.mach | derive_shell_identity_string | (line 94) : "get_bootup_time_digits() => 20000556"
|
80
|
+
I, [2018-06-20T07:17:51.054517 #27923] INFO -- key.mach | derive_shell_identity_string | (line 95) : "Process.ppid.to_s() => 26314"
|
81
|
+
I, [2018-06-20T07:17:51.078095 #27923] INFO -- key.local | derive_session_crypt_key | (line 237) : "Shell Identity Str => 41362555000023ced7603fc02410861291esuoherawollopa"
|
82
|
+
I, [2018-06-20T07:17:51.078194 #27923] INFO -- key.local | derive_session_crypt_key | (line 238) : "Shell Id TxtLength => 49"
|
83
|
+
I, [2018-06-20T07:17:51.078232 #27923] INFO -- key.local | derive_session_crypt_key | (line 239) : "Truncate Shell Str => false"
|
84
|
+
I, [2018-06-20T07:17:51.078268 #27923] INFO -- key.local | derive_session_crypt_key | (line 240) : "Resulting IDString => 41362555000023ced7603fc02410861291esuoherawollopa"
|
85
|
+
I, [2018-06-20T07:17:55.317529 #27923] INFO -- key.local | regenerate_shell_key | (line 169) : "BCrypt Salt REGEND => mqM3yu.Bin.H.nh4l3cwoO"
|
86
|
+
I, [2018-06-20T07:17:55.317603 #27923] INFO -- key.local | regenerate_shell_key | (line 170) : "SessionToken REGEN => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZWOowc3l4hn.H.niB.uy3Mqm"
|
87
|
+
I, [2018-06-20T07:17:55.317642 #27923] INFO -- key.local | regenerate_shell_key | (line 171) : "Chopped Ciphertext => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZW"
|
88
|
+
I, [2018-06-20T07:17:55.317680 #27923] INFO -- key.local | regenerate_shell_key | (line 172) : "Obfuscate ShellKey => 011000011010001100100111011100011001011010011001110010100010101000000110011101011011011010010101110001001111000100110001011111110101101010101101011101101111100011101001010100000101"
|
89
|
+
I, [2018-06-20T07:17:55.317722 #27923] INFO -- key | do_decrypt_key | (line 476) : "### #####################################################################"
|
90
|
+
I, [2018-06-20T07:17:55.317765 #27923] INFO -- key | do_decrypt_key | (line 477) : "### Caller Details =>> =>> key.local | regenerate_shell_key | (line 174)"
|
91
|
+
I, [2018-06-20T07:17:55.317801 #27923] INFO -- key | do_decrypt_key | (line 478) : "### #####################################################################"
|
92
|
+
I, [2018-06-20T07:17:55.317837 #27923] INFO -- key | do_decrypt_key | (line 479) : "Amalgam of Binary Random IV and Ciphertext => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZW"
|
93
|
+
I, [2018-06-20T07:17:55.317873 #27923] INFO -- key | do_decrypt_key | (line 480) : "The Base64 Char representation of this key => 011000011010001100100111011100011001011010011001110010100010101000000110011101011011011010010101110001001111000100110001011111110101101010101101011101101111100011101001010100000101"
|
94
|
+
I, [2018-06-20T07:17:55.317929 #27923] INFO -- key | do_decrypt_key | (line 481) : "256bit Digest (Urlsafe Base64) of this key => hQvwy9Sm2PHSJ6AuDtl4dhOF1gKfR1ydKcNelRZzYu0="
|
95
|
+
I, [2018-06-20T07:17:55.318393 #27923] INFO -- key | do_decrypt_key | (line 496) : "The OutgoingKey Base64 Char representation => isbrxRc4eGC6gZjDfxT2sxkK4OHPvd6LR4Zar6ssZOA@NDxaM2ZzFxi7fDDa7xUh"
|
96
|
+
I, [2018-06-20T07:17:55.318706 #27923] INFO -- key | do_encrypt_key | (line 410) : "### #####################################################################"
|
97
|
+
I, [2018-06-20T07:17:55.318746 #27923] INFO -- key | do_encrypt_key | (line 411) : "### Caller Details =>> =>> key.api | do_login | (line 473)"
|
98
|
+
I, [2018-06-20T07:17:55.318781 #27923] INFO -- key | do_encrypt_key | (line 412) : "### #####################################################################"
|
99
|
+
I, [2018-06-20T07:17:55.318819 #27923] INFO -- key | do_encrypt_key | (line 413) : "The BitStr Char representation of this key => 111111001001011111111000111101100001001100101110110100101000111001010011010111100101101001111100000100111101011110110101001001111101011000000101101110000110100010111110110011110001010011010000100001101110100101000000111000010011001001001001100101000110010001100100011001111100111101000000101100110101100101000111100111111101111111110010000100111100111100000000110010111101110110101101"
|
100
|
+
I, [2018-06-20T07:17:55.318870 #27923] INFO -- key | do_encrypt_key | (line 414) : "256bit Digest (Urlsafe Base64) of this key => OV2cJi1zcgvh_WJD0xld30i_Ovnhqs3bveNsmI1Z-tM="
|
101
|
+
I, [2018-06-20T07:17:55.318993 #27923] INFO -- key | do_encrypt_key | (line 415) : "The IncomingKey Base64 Char representation => L81G0yQKLWFRTMq5Bi%5sTHzKZi5aVfYozcgHsQPH%foRvfX899ruybvzrmVN5tB"
|
102
|
+
I, [2018-06-20T07:17:55.319038 #27923] INFO -- key | do_encrypt_key | (line 416) : "Random IV Used for the AESs Key Encryption => UjvUkLdGHxOhuY-7CtT8zw=="
|
103
|
+
I, [2018-06-20T07:17:55.319121 #27923] INFO -- key | do_encrypt_key | (line 419) : "Cipher Text Produced after this Encryption => FinrBH6i6nUYR25qql-Tp6RTczQpkvhhPamW2gvS3upAY7CDK3zM4syJIq3S541EKuBpVPexVx02qClN3iKwgcAz9p1wsk0ktEhbR8B6Mls="
|
104
|
+
I, [2018-06-20T07:17:55.319239 #27923] INFO -- key | do_encrypt_key | (line 425) : "Amalgam of Binary Random IV and Ciphertext => I0pI@5%OzdER4kPQWh6DvdkjyqAPG4j2Of%4tujb@yT@IXce1N5rk6UjZhG5ehQuLOEqV7hDvE5cHl1he4TnAWmVtw6XMwS%nuVj6%rHM3zacit%S5sns5A3oebaT0sY"
|
105
|
+
I, [2018-06-20T07:17:55.319278 #27923] INFO -- key | do_encrypt_key | (line 426) : "------------------------------------------------------------------------- >>>>>>"
|
106
|
+
I, [2018-06-20T07:18:47.195554 #29057] INFO -- key.local | regenerate_shell_key | (line 157) : "### #####################################################################"
|
107
|
+
I, [2018-06-20T07:18:47.195600 #29057] INFO -- key.local | regenerate_shell_key | (line 158) : "### Caller Details =>> =>> key.api | read_app_content | (line 672)"
|
108
|
+
I, [2018-06-20T07:18:47.195638 #29057] INFO -- key.local | regenerate_shell_key | (line 159) : "### #####################################################################"
|
109
|
+
I, [2018-06-20T07:18:47.195777 #29057] INFO -- key.mach | derive_shell_identity_string | (line 85) : "### #####################################################################"
|
110
|
+
I, [2018-06-20T07:18:47.195817 #29057] INFO -- key.mach | derive_shell_identity_string | (line 86) : "### Caller Details =>> =>> key.local | derive_session_crypt_key | (line 232)"
|
111
|
+
I, [2018-06-20T07:18:47.195863 #29057] INFO -- key.mach | derive_shell_identity_string | (line 87) : "### #####################################################################"
|
112
|
+
I, [2018-06-20T07:18:47.196201 #29057] INFO -- key.mach | derive_shell_identity_string | (line 90) : "Etc.getlogin() => apollo"
|
113
|
+
I, [2018-06-20T07:18:47.196249 #29057] INFO -- key.mach | derive_shell_identity_string | (line 91) : "Socket.gethostname() => warehouse"
|
114
|
+
I, [2018-06-20T07:18:47.196725 #29057] INFO -- key.mach | derive_shell_identity_string | (line 92) : "get_net_address_digits() => 192168014"
|
115
|
+
I, [2018-06-20T07:18:47.202494 #29057] INFO -- key.mach | derive_shell_identity_string | (line 93) : "derive_network_identity() => 20cf3067dec3"
|
116
|
+
I, [2018-06-20T07:18:47.205036 #29057] INFO -- key.mach | derive_shell_identity_string | (line 94) : "get_bootup_time_digits() => 20000556"
|
117
|
+
I, [2018-06-20T07:18:47.205133 #29057] INFO -- key.mach | derive_shell_identity_string | (line 95) : "Process.ppid.to_s() => 26314"
|
118
|
+
I, [2018-06-20T07:18:47.208112 #29057] INFO -- key.local | derive_session_crypt_key | (line 237) : "Shell Identity Str => 41362555000023ced7603fc02410861291esuoherawollopa"
|
119
|
+
I, [2018-06-20T07:18:47.208187 #29057] INFO -- key.local | derive_session_crypt_key | (line 238) : "Shell Id TxtLength => 49"
|
120
|
+
I, [2018-06-20T07:18:47.208237 #29057] INFO -- key.local | derive_session_crypt_key | (line 239) : "Truncate Shell Str => false"
|
121
|
+
I, [2018-06-20T07:18:47.208281 #29057] INFO -- key.local | derive_session_crypt_key | (line 240) : "Resulting IDString => 41362555000023ced7603fc02410861291esuoherawollopa"
|
122
|
+
I, [2018-06-20T07:18:51.466118 #29057] INFO -- key.local | regenerate_shell_key | (line 169) : "BCrypt Salt REGEND => mqM3yu.Bin.H.nh4l3cwoO"
|
123
|
+
I, [2018-06-20T07:18:51.466196 #29057] INFO -- key.local | regenerate_shell_key | (line 170) : "SessionToken REGEN => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZWOowc3l4hn.H.niB.uy3Mqm"
|
124
|
+
I, [2018-06-20T07:18:51.466235 #29057] INFO -- key.local | regenerate_shell_key | (line 171) : "Chopped Ciphertext => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZW"
|
125
|
+
I, [2018-06-20T07:18:51.466271 #29057] INFO -- key.local | regenerate_shell_key | (line 172) : "Obfuscate ShellKey => 011000011010001100100111011100011001011010011001110010100010101000000110011101011011011010010101110001001111000100110001011111110101101010101101011101101111100011101001010100000101"
|
126
|
+
I, [2018-06-20T07:18:51.466319 #29057] INFO -- key | do_decrypt_key | (line 476) : "### #####################################################################"
|
127
|
+
I, [2018-06-20T07:18:51.466355 #29057] INFO -- key | do_decrypt_key | (line 477) : "### Caller Details =>> =>> key.local | regenerate_shell_key | (line 174)"
|
128
|
+
I, [2018-06-20T07:18:51.466404 #29057] INFO -- key | do_decrypt_key | (line 478) : "### #####################################################################"
|
129
|
+
I, [2018-06-20T07:18:51.466442 #29057] INFO -- key | do_decrypt_key | (line 479) : "Amalgam of Binary Random IV and Ciphertext => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZW"
|
130
|
+
I, [2018-06-20T07:18:51.466483 #29057] INFO -- key | do_decrypt_key | (line 480) : "The Base64 Char representation of this key => 011000011010001100100111011100011001011010011001110010100010101000000110011101011011011010010101110001001111000100110001011111110101101010101101011101101111100011101001010100000101"
|
131
|
+
I, [2018-06-20T07:18:51.466554 #29057] INFO -- key | do_decrypt_key | (line 481) : "256bit Digest (Urlsafe Base64) of this key => hQvwy9Sm2PHSJ6AuDtl4dhOF1gKfR1ydKcNelRZzYu0="
|
132
|
+
I, [2018-06-20T07:18:51.467178 #29057] INFO -- key | do_decrypt_key | (line 496) : "The OutgoingKey Base64 Char representation => isbrxRc4eGC6gZjDfxT2sxkK4OHPvd6LR4Zar6ssZOA@NDxaM2ZzFxi7fDDa7xUh"
|
133
|
+
I, [2018-06-20T07:18:51.491154 #29057] INFO -- key | do_decrypt_key | (line 476) : "### #####################################################################"
|
134
|
+
I, [2018-06-20T07:18:51.491221 #29057] INFO -- key | do_decrypt_key | (line 477) : "### Caller Details =>> =>> key.api | read_app_content | (line 681)"
|
135
|
+
I, [2018-06-20T07:18:51.491258 #29057] INFO -- key | do_decrypt_key | (line 478) : "### #####################################################################"
|
136
|
+
I, [2018-06-20T07:18:51.491295 #29057] INFO -- key | do_decrypt_key | (line 479) : "Amalgam of Binary Random IV and Ciphertext => I0pI@5%OzdER4kPQWh6DvdkjyqAPG4j2Of%4tujb@yT@IXce1N5rk6UjZhG5ehQuLOEqV7hDvE5cHl1he4TnAWmVtw6XMwS%nuVj6%rHM3zacit%S5sns5A3oebaT0sY"
|
137
|
+
I, [2018-06-20T07:18:51.491331 #29057] INFO -- key | do_decrypt_key | (line 480) : "The Base64 Char representation of this key => 111111001001011111111000111101100001001100101110110100101000111001010011010111100101101001111100000100111101011110110101001001111101011000000101101110000110100010111110110011110001010011010000100001101110100101000000111000010011001001001001100101000110010001100100011001111100111101000000101100110101100101000111100111111101111111110010000100111100111100000000110010111101110110101101"
|
138
|
+
I, [2018-06-20T07:18:51.491382 #29057] INFO -- key | do_decrypt_key | (line 481) : "256bit Digest (Urlsafe Base64) of this key => OV2cJi1zcgvh_WJD0xld30i_Ovnhqs3bveNsmI1Z-tM="
|
139
|
+
I, [2018-06-20T07:18:51.491847 #29057] INFO -- key | do_decrypt_key | (line 496) : "The OutgoingKey Base64 Char representation => L81G0yQKLWFRTMq5Bi%5sTHzKZi5aVfYozcgHsQPH%foRvfX899ruybvzrmVN5tB"
|
140
|
+
I, [2018-06-20T07:18:51.510750 #29057] INFO -- key.local | regenerate_shell_key | (line 157) : "### #####################################################################"
|
141
|
+
I, [2018-06-20T07:18:51.510806 #29057] INFO -- key.local | regenerate_shell_key | (line 158) : "### Caller Details =>> =>> key.api | write_app_content | (line 753)"
|
142
|
+
I, [2018-06-20T07:18:51.510844 #29057] INFO -- key.local | regenerate_shell_key | (line 159) : "### #####################################################################"
|
143
|
+
I, [2018-06-20T07:18:51.511097 #29057] INFO -- key.mach | derive_shell_identity_string | (line 85) : "### #####################################################################"
|
144
|
+
I, [2018-06-20T07:18:51.511138 #29057] INFO -- key.mach | derive_shell_identity_string | (line 86) : "### Caller Details =>> =>> key.local | derive_session_crypt_key | (line 232)"
|
145
|
+
I, [2018-06-20T07:18:51.511176 #29057] INFO -- key.mach | derive_shell_identity_string | (line 87) : "### #####################################################################"
|
146
|
+
I, [2018-06-20T07:18:51.511265 #29057] INFO -- key.mach | derive_shell_identity_string | (line 90) : "Etc.getlogin() => apollo"
|
147
|
+
I, [2018-06-20T07:18:51.511311 #29057] INFO -- key.mach | derive_shell_identity_string | (line 91) : "Socket.gethostname() => warehouse"
|
148
|
+
I, [2018-06-20T07:18:51.511757 #29057] INFO -- key.mach | derive_shell_identity_string | (line 92) : "get_net_address_digits() => 192168014"
|
149
|
+
I, [2018-06-20T07:18:51.511963 #29057] INFO -- key.mach | derive_shell_identity_string | (line 93) : "derive_network_identity() => 20cf3067dec3"
|
150
|
+
I, [2018-06-20T07:18:51.514457 #29057] INFO -- key.mach | derive_shell_identity_string | (line 94) : "get_bootup_time_digits() => 20000556"
|
151
|
+
I, [2018-06-20T07:18:51.514538 #29057] INFO -- key.mach | derive_shell_identity_string | (line 95) : "Process.ppid.to_s() => 26314"
|
152
|
+
I, [2018-06-20T07:18:51.517561 #29057] INFO -- key.local | derive_session_crypt_key | (line 237) : "Shell Identity Str => 41362555000023ced7603fc02410861291esuoherawollopa"
|
153
|
+
I, [2018-06-20T07:18:51.517731 #29057] INFO -- key.local | derive_session_crypt_key | (line 238) : "Shell Id TxtLength => 49"
|
154
|
+
I, [2018-06-20T07:18:51.517810 #29057] INFO -- key.local | derive_session_crypt_key | (line 239) : "Truncate Shell Str => false"
|
155
|
+
I, [2018-06-20T07:18:51.517876 #29057] INFO -- key.local | derive_session_crypt_key | (line 240) : "Resulting IDString => 41362555000023ced7603fc02410861291esuoherawollopa"
|
156
|
+
I, [2018-06-20T07:18:55.697600 #29057] INFO -- key.local | regenerate_shell_key | (line 169) : "BCrypt Salt REGEND => mqM3yu.Bin.H.nh4l3cwoO"
|
157
|
+
I, [2018-06-20T07:18:55.697677 #29057] INFO -- key.local | regenerate_shell_key | (line 170) : "SessionToken REGEN => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZWOowc3l4hn.H.niB.uy3Mqm"
|
158
|
+
I, [2018-06-20T07:18:55.697718 #29057] INFO -- key.local | regenerate_shell_key | (line 171) : "Chopped Ciphertext => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZW"
|
159
|
+
I, [2018-06-20T07:18:55.697757 #29057] INFO -- key.local | regenerate_shell_key | (line 172) : "Obfuscate ShellKey => 011000011010001100100111011100011001011010011001110010100010101000000110011101011011011010010101110001001111000100110001011111110101101010101101011101101111100011101001010100000101"
|
160
|
+
I, [2018-06-20T07:18:55.697802 #29057] INFO -- key | do_decrypt_key | (line 476) : "### #####################################################################"
|
161
|
+
I, [2018-06-20T07:18:55.697840 #29057] INFO -- key | do_decrypt_key | (line 477) : "### Caller Details =>> =>> key.local | regenerate_shell_key | (line 174)"
|
162
|
+
I, [2018-06-20T07:18:55.697877 #29057] INFO -- key | do_decrypt_key | (line 478) : "### #####################################################################"
|
163
|
+
I, [2018-06-20T07:18:55.697914 #29057] INFO -- key | do_decrypt_key | (line 479) : "Amalgam of Binary Random IV and Ciphertext => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZW"
|
164
|
+
I, [2018-06-20T07:18:55.697952 #29057] INFO -- key | do_decrypt_key | (line 480) : "The Base64 Char representation of this key => 011000011010001100100111011100011001011010011001110010100010101000000110011101011011011010010101110001001111000100110001011111110101101010101101011101101111100011101001010100000101"
|
165
|
+
I, [2018-06-20T07:18:55.698009 #29057] INFO -- key | do_decrypt_key | (line 481) : "256bit Digest (Urlsafe Base64) of this key => hQvwy9Sm2PHSJ6AuDtl4dhOF1gKfR1ydKcNelRZzYu0="
|
166
|
+
I, [2018-06-20T07:18:55.698542 #29057] INFO -- key | do_decrypt_key | (line 496) : "The OutgoingKey Base64 Char representation => isbrxRc4eGC6gZjDfxT2sxkK4OHPvd6LR4Zar6ssZOA@NDxaM2ZzFxi7fDDa7xUh"
|
167
|
+
I, [2018-06-20T07:18:55.703247 #29057] INFO -- key | do_decrypt_key | (line 476) : "### #####################################################################"
|
168
|
+
I, [2018-06-20T07:18:55.703292 #29057] INFO -- key | do_decrypt_key | (line 477) : "### Caller Details =>> =>> key.api | write_app_content | (line 762)"
|
169
|
+
I, [2018-06-20T07:18:55.703329 #29057] INFO -- key | do_decrypt_key | (line 478) : "### #####################################################################"
|
170
|
+
I, [2018-06-20T07:18:55.703365 #29057] INFO -- key | do_decrypt_key | (line 479) : "Amalgam of Binary Random IV and Ciphertext => I0pI@5%OzdER4kPQWh6DvdkjyqAPG4j2Of%4tujb@yT@IXce1N5rk6UjZhG5ehQuLOEqV7hDvE5cHl1he4TnAWmVtw6XMwS%nuVj6%rHM3zacit%S5sns5A3oebaT0sY"
|
171
|
+
I, [2018-06-20T07:18:55.703403 #29057] INFO -- key | do_decrypt_key | (line 480) : "The Base64 Char representation of this key => 111111001001011111111000111101100001001100101110110100101000111001010011010111100101101001111100000100111101011110110101001001111101011000000101101110000110100010111110110011110001010011010000100001101110100101000000111000010011001001001001100101000110010001100100011001111100111101000000101100110101100101000111100111111101111111110010000100111100111100000000110010111101110110101101"
|
172
|
+
I, [2018-06-20T07:18:55.703451 #29057] INFO -- key | do_decrypt_key | (line 481) : "256bit Digest (Urlsafe Base64) of this key => OV2cJi1zcgvh_WJD0xld30i_Ovnhqs3bveNsmI1Z-tM="
|
173
|
+
I, [2018-06-20T07:18:55.703920 #29057] INFO -- key | do_decrypt_key | (line 496) : "The OutgoingKey Base64 Char representation => L81G0yQKLWFRTMq5Bi%5sTHzKZi5aVfYozcgHsQPH%foRvfX899ruybvzrmVN5tB"
|
174
|
+
I, [2018-06-20T07:19:49.826189 #29836] INFO -- key.local | regenerate_shell_key | (line 157) : "### #####################################################################"
|
175
|
+
I, [2018-06-20T07:19:49.826240 #29836] INFO -- key.local | regenerate_shell_key | (line 158) : "### Caller Details =>> =>> key.api | read_app_content | (line 672)"
|
176
|
+
I, [2018-06-20T07:19:49.826288 #29836] INFO -- key.local | regenerate_shell_key | (line 159) : "### #####################################################################"
|
177
|
+
I, [2018-06-20T07:19:49.826433 #29836] INFO -- key.mach | derive_shell_identity_string | (line 85) : "### #####################################################################"
|
178
|
+
I, [2018-06-20T07:19:49.826487 #29836] INFO -- key.mach | derive_shell_identity_string | (line 86) : "### Caller Details =>> =>> key.local | derive_session_crypt_key | (line 232)"
|
179
|
+
I, [2018-06-20T07:19:49.826530 #29836] INFO -- key.mach | derive_shell_identity_string | (line 87) : "### #####################################################################"
|
180
|
+
I, [2018-06-20T07:19:49.826871 #29836] INFO -- key.mach | derive_shell_identity_string | (line 90) : "Etc.getlogin() => apollo"
|
181
|
+
I, [2018-06-20T07:19:49.826938 #29836] INFO -- key.mach | derive_shell_identity_string | (line 91) : "Socket.gethostname() => warehouse"
|
182
|
+
I, [2018-06-20T07:19:49.827437 #29836] INFO -- key.mach | derive_shell_identity_string | (line 92) : "get_net_address_digits() => 192168014"
|
183
|
+
I, [2018-06-20T07:19:49.833311 #29836] INFO -- key.mach | derive_shell_identity_string | (line 93) : "derive_network_identity() => 20cf3067dec3"
|
184
|
+
I, [2018-06-20T07:19:49.835833 #29836] INFO -- key.mach | derive_shell_identity_string | (line 94) : "get_bootup_time_digits() => 20000555"
|
185
|
+
I, [2018-06-20T07:19:49.835924 #29836] INFO -- key.mach | derive_shell_identity_string | (line 95) : "Process.ppid.to_s() => 26314"
|
186
|
+
I, [2018-06-20T07:19:49.838730 #29836] INFO -- key.local | derive_session_crypt_key | (line 237) : "Shell Identity Str => 41362555000023ced7603fc02410861291esuoherawollopa"
|
187
|
+
I, [2018-06-20T07:19:49.838810 #29836] INFO -- key.local | derive_session_crypt_key | (line 238) : "Shell Id TxtLength => 49"
|
188
|
+
I, [2018-06-20T07:19:49.838850 #29836] INFO -- key.local | derive_session_crypt_key | (line 239) : "Truncate Shell Str => false"
|
189
|
+
I, [2018-06-20T07:19:49.838889 #29836] INFO -- key.local | derive_session_crypt_key | (line 240) : "Resulting IDString => 41362555000023ced7603fc02410861291esuoherawollopa"
|
190
|
+
I, [2018-06-20T07:19:54.110571 #29836] INFO -- key.local | regenerate_shell_key | (line 169) : "BCrypt Salt REGEND => mqM3yu.Bin.H.nh4l3cwoO"
|
191
|
+
I, [2018-06-20T07:19:54.110651 #29836] INFO -- key.local | regenerate_shell_key | (line 170) : "SessionToken REGEN => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZWOowc3l4hn.H.niB.uy3Mqm"
|
192
|
+
I, [2018-06-20T07:19:54.110690 #29836] INFO -- key.local | regenerate_shell_key | (line 171) : "Chopped Ciphertext => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZW"
|
193
|
+
I, [2018-06-20T07:19:54.110727 #29836] INFO -- key.local | regenerate_shell_key | (line 172) : "Obfuscate ShellKey => 011000011010001100100111011100011001011010011001110010100010101000000110011101011011011010010101110001001111000100110001011111110101101010101101011101101111100011101001010100000101"
|
194
|
+
I, [2018-06-20T07:19:54.110770 #29836] INFO -- key | do_decrypt_key | (line 476) : "### #####################################################################"
|
195
|
+
I, [2018-06-20T07:19:54.110806 #29836] INFO -- key | do_decrypt_key | (line 477) : "### Caller Details =>> =>> key.local | regenerate_shell_key | (line 174)"
|
196
|
+
I, [2018-06-20T07:19:54.110846 #29836] INFO -- key | do_decrypt_key | (line 478) : "### #####################################################################"
|
197
|
+
I, [2018-06-20T07:19:54.110882 #29836] INFO -- key | do_decrypt_key | (line 479) : "Amalgam of Binary Random IV and Ciphertext => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZW"
|
198
|
+
I, [2018-06-20T07:19:54.110926 #29836] INFO -- key | do_decrypt_key | (line 480) : "The Base64 Char representation of this key => 011000011010001100100111011100011001011010011001110010100010101000000110011101011011011010010101110001001111000100110001011111110101101010101101011101101111100011101001010100000101"
|
199
|
+
I, [2018-06-20T07:19:54.111008 #29836] INFO -- key | do_decrypt_key | (line 481) : "256bit Digest (Urlsafe Base64) of this key => hQvwy9Sm2PHSJ6AuDtl4dhOF1gKfR1ydKcNelRZzYu0="
|
200
|
+
I, [2018-06-20T07:19:54.111521 #29836] INFO -- key | do_decrypt_key | (line 496) : "The OutgoingKey Base64 Char representation => isbrxRc4eGC6gZjDfxT2sxkK4OHPvd6LR4Zar6ssZOA@NDxaM2ZzFxi7fDDa7xUh"
|
201
|
+
I, [2018-06-20T07:19:54.116264 #29836] INFO -- key | do_decrypt_key | (line 476) : "### #####################################################################"
|
202
|
+
I, [2018-06-20T07:19:54.116306 #29836] INFO -- key | do_decrypt_key | (line 477) : "### Caller Details =>> =>> key.api | read_app_content | (line 681)"
|
203
|
+
I, [2018-06-20T07:19:54.116342 #29836] INFO -- key | do_decrypt_key | (line 478) : "### #####################################################################"
|
204
|
+
I, [2018-06-20T07:19:54.116377 #29836] INFO -- key | do_decrypt_key | (line 479) : "Amalgam of Binary Random IV and Ciphertext => I0pI@5%OzdER4kPQWh6DvdkjyqAPG4j2Of%4tujb@yT@IXce1N5rk6UjZhG5ehQuLOEqV7hDvE5cHl1he4TnAWmVtw6XMwS%nuVj6%rHM3zacit%S5sns5A3oebaT0sY"
|
205
|
+
I, [2018-06-20T07:19:54.116415 #29836] INFO -- key | do_decrypt_key | (line 480) : "The Base64 Char representation of this key => 111111001001011111111000111101100001001100101110110100101000111001010011010111100101101001111100000100111101011110110101001001111101011000000101101110000110100010111110110011110001010011010000100001101110100101000000111000010011001001001001100101000110010001100100011001111100111101000000101100110101100101000111100111111101111111110010000100111100111100000000110010111101110110101101"
|
206
|
+
I, [2018-06-20T07:19:54.116466 #29836] INFO -- key | do_decrypt_key | (line 481) : "256bit Digest (Urlsafe Base64) of this key => OV2cJi1zcgvh_WJD0xld30i_Ovnhqs3bveNsmI1Z-tM="
|
207
|
+
I, [2018-06-20T07:19:54.116942 #29836] INFO -- key | do_decrypt_key | (line 496) : "The OutgoingKey Base64 Char representation => L81G0yQKLWFRTMq5Bi%5sTHzKZi5aVfYozcgHsQPH%foRvfX899ruybvzrmVN5tB"
|
208
|
+
I, [2018-06-20T07:19:54.167392 #29836] INFO -- key.local | regenerate_shell_key | (line 157) : "### #####################################################################"
|
209
|
+
I, [2018-06-20T07:19:54.167459 #29836] INFO -- key.local | regenerate_shell_key | (line 158) : "### Caller Details =>> =>> key.api | write_app_content | (line 753)"
|
210
|
+
I, [2018-06-20T07:19:54.167496 #29836] INFO -- key.local | regenerate_shell_key | (line 159) : "### #####################################################################"
|
211
|
+
I, [2018-06-20T07:19:54.167647 #29836] INFO -- key.mach | derive_shell_identity_string | (line 85) : "### #####################################################################"
|
212
|
+
I, [2018-06-20T07:19:54.167687 #29836] INFO -- key.mach | derive_shell_identity_string | (line 86) : "### Caller Details =>> =>> key.local | derive_session_crypt_key | (line 232)"
|
213
|
+
I, [2018-06-20T07:19:54.167727 #29836] INFO -- key.mach | derive_shell_identity_string | (line 87) : "### #####################################################################"
|
214
|
+
I, [2018-06-20T07:19:54.167816 #29836] INFO -- key.mach | derive_shell_identity_string | (line 90) : "Etc.getlogin() => apollo"
|
215
|
+
I, [2018-06-20T07:19:54.167865 #29836] INFO -- key.mach | derive_shell_identity_string | (line 91) : "Socket.gethostname() => warehouse"
|
216
|
+
I, [2018-06-20T07:19:54.168352 #29836] INFO -- key.mach | derive_shell_identity_string | (line 92) : "get_net_address_digits() => 192168014"
|
217
|
+
I, [2018-06-20T07:19:54.168549 #29836] INFO -- key.mach | derive_shell_identity_string | (line 93) : "derive_network_identity() => 20cf3067dec3"
|
218
|
+
I, [2018-06-20T07:19:54.171104 #29836] INFO -- key.mach | derive_shell_identity_string | (line 94) : "get_bootup_time_digits() => 20000556"
|
219
|
+
I, [2018-06-20T07:19:54.171176 #29836] INFO -- key.mach | derive_shell_identity_string | (line 95) : "Process.ppid.to_s() => 26314"
|
220
|
+
I, [2018-06-20T07:19:54.173953 #29836] INFO -- key.local | derive_session_crypt_key | (line 237) : "Shell Identity Str => 41362655000023ced7603fc02410861291esuoherawollopa"
|
221
|
+
I, [2018-06-20T07:19:54.174047 #29836] INFO -- key.local | derive_session_crypt_key | (line 238) : "Shell Id TxtLength => 49"
|
222
|
+
I, [2018-06-20T07:19:54.174095 #29836] INFO -- key.local | derive_session_crypt_key | (line 239) : "Truncate Shell Str => false"
|
223
|
+
I, [2018-06-20T07:19:54.174134 #29836] INFO -- key.local | derive_session_crypt_key | (line 240) : "Resulting IDString => 41362655000023ced7603fc02410861291esuoherawollopa"
|
224
|
+
I, [2018-06-20T07:19:58.420300 #29836] INFO -- key.local | regenerate_shell_key | (line 169) : "BCrypt Salt REGEND => mqM3yu.Bin.H.nh4l3cwoO"
|
225
|
+
I, [2018-06-20T07:19:58.420379 #29836] INFO -- key.local | regenerate_shell_key | (line 170) : "SessionToken REGEN => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZWOowc3l4hn.H.niB.uy3Mqm"
|
226
|
+
I, [2018-06-20T07:19:58.420419 #29836] INFO -- key.local | regenerate_shell_key | (line 171) : "Chopped Ciphertext => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZW"
|
227
|
+
I, [2018-06-20T07:19:58.420459 #29836] INFO -- key.local | regenerate_shell_key | (line 172) : "Obfuscate ShellKey => 100101011110110111001010011010110001110001110100001101011011011101011010101110101111001110001101011111101001000001011100001011100010000001111001011100110000110000111001101101110011"
|
228
|
+
I, [2018-06-20T07:19:58.420552 #29836] INFO -- key | do_decrypt_key | (line 476) : "### #####################################################################"
|
229
|
+
I, [2018-06-20T07:19:58.420592 #29836] INFO -- key | do_decrypt_key | (line 477) : "### Caller Details =>> =>> key.local | regenerate_shell_key | (line 174)"
|
230
|
+
I, [2018-06-20T07:19:58.420628 #29836] INFO -- key | do_decrypt_key | (line 478) : "### #####################################################################"
|
231
|
+
I, [2018-06-20T07:19:58.420663 #29836] INFO -- key | do_decrypt_key | (line 479) : "Amalgam of Binary Random IV and Ciphertext => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZW"
|
232
|
+
I, [2018-06-20T07:19:58.420699 #29836] INFO -- key | do_decrypt_key | (line 480) : "The Base64 Char representation of this key => 100101011110110111001010011010110001110001110100001101011011011101011010101110101111001110001101011111101001000001011100001011100010000001111001011100110000110000111001101101110011"
|
233
|
+
I, [2018-06-20T07:19:58.420753 #29836] INFO -- key | do_decrypt_key | (line 481) : "256bit Digest (Urlsafe Base64) of this key => fyOgOc8SjEb5IwztXDTlinUIXAuDvHVdr7QcFXz9JYw="
|
234
|
+
|
235
|
+
|
236
|
+
|
237
|
+
|
238
|
+
|
239
|
+
|
240
|
+
|
241
|
+
|
242
|
+
|
243
|
+
|
244
|
+
===================================================================================================================================================================================================
|
245
|
+
===================================================================================================================================================================================================
|
246
|
+
|
247
|
+
I, [2018-06-20T07:16:31.020725 #27357] INFO -- key.local | generate_shell_key_and_token | (line 81) : "### #####################################################################"
|
248
|
+
I, [2018-06-20T07:16:31.020761 #27357] INFO -- key.local | generate_shell_key_and_token | (line 82) : "### Caller Details =>> =>> key | execute | (line 83)"
|
249
|
+
I, [2018-06-20T07:16:31.020799 #27357] INFO -- key.local | generate_shell_key_and_token | (line 83) : "### #####################################################################"
|
250
|
+
I, [2018-06-20T07:16:31.024921 #27357] INFO -- key.mach | derive_shell_identity_string | (line 85) : "### #####################################################################"
|
251
|
+
I, [2018-06-20T07:16:31.024971 #27357] INFO -- key.mach | derive_shell_identity_string | (line 86) : "### Caller Details =>> =>> key.local | derive_session_crypt_key | (line 232)"
|
252
|
+
I, [2018-06-20T07:16:31.025008 #27357] INFO -- key.mach | derive_shell_identity_string | (line 87) : "### #####################################################################"
|
253
|
+
I, [2018-06-20T07:16:31.025388 #27357] INFO -- key.mach | derive_shell_identity_string | (line 90) : "Etc.getlogin() => apollo"
|
254
|
+
I, [2018-06-20T07:16:31.025438 #27357] INFO -- key.mach | derive_shell_identity_string | (line 91) : "Socket.gethostname() => warehouse"
|
255
|
+
I, [2018-06-20T07:16:31.025920 #27357] INFO -- key.mach | derive_shell_identity_string | (line 92) : "get_net_address_digits() => 192168014"
|
256
|
+
I, [2018-06-20T07:16:31.031573 #27357] INFO -- key.mach | derive_shell_identity_string | (line 93) : "derive_network_identity() => 20cf3067dec3"
|
257
|
+
I, [2018-06-20T07:16:31.034135 #27357] INFO -- key.mach | derive_shell_identity_string | (line 94) : "get_bootup_time_digits() => 20000556"
|
258
|
+
I, [2018-06-20T07:16:31.034229 #27357] INFO -- key.mach | derive_shell_identity_string | (line 95) : "Process.ppid.to_s() => 26314"
|
259
|
+
I, [2018-06-20T07:16:31.037052 #27357] INFO -- key.local | derive_session_crypt_key | (line 237) : "Shell Identity Str => 41362555000023ced7603fc02410861291esuoherawollopa"
|
260
|
+
I, [2018-06-20T07:16:31.037138 #27357] INFO -- key.local | derive_session_crypt_key | (line 238) : "Shell Id TxtLength => 49"
|
261
|
+
I, [2018-06-20T07:16:31.037186 #27357] INFO -- key.local | derive_session_crypt_key | (line 239) : "Truncate Shell Str => false"
|
262
|
+
I, [2018-06-20T07:16:31.037222 #27357] INFO -- key.local | derive_session_crypt_key | (line 240) : "Resulting IDString => 41362555000023ced7603fc02410861291esuoherawollopa"
|
263
|
+
|
264
|
+
===================================================================================================================================================================================================
|
265
|
+
===================================================================================================================================================================================================
|
266
|
+
|
267
|
+
I, [2018-06-20T07:19:54.167392 #29836] INFO -- key.local | regenerate_shell_key | (line 157) : "### #####################################################################"
|
268
|
+
I, [2018-06-20T07:19:54.167459 #29836] INFO -- key.local | regenerate_shell_key | (line 158) : "### Caller Details =>> =>> key.api | write_app_content | (line 753)"
|
269
|
+
I, [2018-06-20T07:19:54.167496 #29836] INFO -- key.local | regenerate_shell_key | (line 159) : "### #####################################################################"
|
270
|
+
I, [2018-06-20T07:19:54.167647 #29836] INFO -- key.mach | derive_shell_identity_string | (line 85) : "### #####################################################################"
|
271
|
+
I, [2018-06-20T07:19:54.167687 #29836] INFO -- key.mach | derive_shell_identity_string | (line 86) : "### Caller Details =>> =>> key.local | derive_session_crypt_key | (line 232)"
|
272
|
+
I, [2018-06-20T07:19:54.167727 #29836] INFO -- key.mach | derive_shell_identity_string | (line 87) : "### #####################################################################"
|
273
|
+
I, [2018-06-20T07:19:54.167816 #29836] INFO -- key.mach | derive_shell_identity_string | (line 90) : "Etc.getlogin() => apollo"
|
274
|
+
I, [2018-06-20T07:19:54.167865 #29836] INFO -- key.mach | derive_shell_identity_string | (line 91) : "Socket.gethostname() => warehouse"
|
275
|
+
I, [2018-06-20T07:19:54.168352 #29836] INFO -- key.mach | derive_shell_identity_string | (line 92) : "get_net_address_digits() => 192168014"
|
276
|
+
I, [2018-06-20T07:19:54.168549 #29836] INFO -- key.mach | derive_shell_identity_string | (line 93) : "derive_network_identity() => 20cf3067dec3"
|
277
|
+
I, [2018-06-20T07:19:54.171104 #29836] INFO -- key.mach | derive_shell_identity_string | (line 94) : "get_bootup_time_digits() => 20000556"
|
278
|
+
I, [2018-06-20T07:19:54.171176 #29836] INFO -- key.mach | derive_shell_identity_string | (line 95) : "Process.ppid.to_s() => 26314"
|
279
|
+
I, [2018-06-20T07:19:54.173953 #29836] INFO -- key.local | derive_session_crypt_key | (line 237) : "Shell Identity Str => 41362655000023ced7603fc02410861291esuoherawollopa"
|
280
|
+
I, [2018-06-20T07:19:54.174047 #29836] INFO -- key.local | derive_session_crypt_key | (line 238) : "Shell Id TxtLength => 49"
|
281
|
+
I, [2018-06-20T07:19:54.174095 #29836] INFO -- key.local | derive_session_crypt_key | (line 239) : "Truncate Shell Str => false"
|
282
|
+
I, [2018-06-20T07:19:54.174134 #29836] INFO -- key.local | derive_session_crypt_key | (line 240) : "Resulting IDString => 41362655000023ced7603fc02410861291esuoherawollopa"
|
283
|
+
I, [2018-06-20T07:19:58.420300 #29836] INFO -- key.local | regenerate_shell_key | (line 169) : "BCrypt Salt REGEND => mqM3yu.Bin.H.nh4l3cwoO"
|
284
|
+
I, [2018-06-20T07:19:58.420379 #29836] INFO -- key.local | regenerate_shell_key | (line 170) : "SessionToken REGEN => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZWOowc3l4hn.H.niB.uy3Mqm"
|
285
|
+
I, [2018-06-20T07:19:58.420419 #29836] INFO -- key.local | regenerate_shell_key | (line 171) : "Chopped Ciphertext => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZW"
|
286
|
+
I, [2018-06-20T07:19:58.420459 #29836] INFO -- key.local | regenerate_shell_key | (line 172) : "Obfuscate ShellKey => 100101011110110111001010011010110001110001110100001101011011011101011010101110101111001110001101011111101001000001011100001011100010000001111001011100110000110000111001101101110011"
|
287
|
+
I, [2018-06-20T07:19:58.420552 #29836] INFO -- key | do_decrypt_key | (line 476) : "### #####################################################################"
|
288
|
+
I, [2018-06-20T07:19:58.420592 #29836] INFO -- key | do_decrypt_key | (line 477) : "### Caller Details =>> =>> key.local | regenerate_shell_key | (line 174)"
|
289
|
+
I, [2018-06-20T07:19:58.420628 #29836] INFO -- key | do_decrypt_key | (line 478) : "### #####################################################################"
|
290
|
+
I, [2018-06-20T07:19:58.420663 #29836] INFO -- key | do_decrypt_key | (line 479) : "Amalgam of Binary Random IV and Ciphertext => 57UDSB@NPq7f1cRgu7xNmjbiVSCVnUlZoU61kjdKsAKj9Xnh1JaR1QtCh4fSBY8vwCqprIYjd@OK3BQahKZwcVo2oW50pwppX7id9rs2srfYaWqmCSxSIVNRxqOPp1ZW"
|
291
|
+
I, [2018-06-20T07:19:58.420699 #29836] INFO -- key | do_decrypt_key | (line 480) : "The Base64 Char representation of this key => 100101011110110111001010011010110001110001110100001101011011011101011010101110101111001110001101011111101001000001011100001011100010000001111001011100110000110000111001101101110011"
|
292
|
+
I, [2018-06-20T07:19:58.420753 #29836] INFO -- key | do_decrypt_key | (line 481) : "256bit Digest (Urlsafe Base64) of this key => fyOgOc8SjEb5IwztXDTlinUIXAuDvHVdr7QcFXz9JYw="
|
293
|
+
|
294
|
+
===================================================================================================================================================================================================
|
295
|
+
===================================================================================================================================================================================================
|
data/lib/logging/gem.logging.rb
CHANGED
@@ -12,9 +12,9 @@ require "session/user.home"
|
|
12
12
|
#
|
13
13
|
# include Logging
|
14
14
|
# def doImportant
|
15
|
-
# log.warn(
|
15
|
+
# log.warn(x) "unhappy about doing this"
|
16
16
|
# do_anyway
|
17
|
-
# log.debug(
|
17
|
+
# log.debug(x) "all good it was okay"
|
18
18
|
# end
|
19
19
|
#
|
20
20
|
# So what are Mixins?
|
@@ -52,7 +52,7 @@ module OpenLogger
|
|
52
52
|
#
|
53
53
|
# - the [module] the logging call came from
|
54
54
|
# - the [method] the logging call came from
|
55
|
-
# -
|
55
|
+
# - line number origins of the logging call
|
56
56
|
#
|
57
57
|
# To use this method you can make calls like this
|
58
58
|
#
|
@@ -20,6 +20,26 @@ module OpenSecret
|
|
20
20
|
# know whether the information is a password, a pin number or whatever
|
21
21
|
# so it takes the integer minimum size at its word.
|
22
22
|
#
|
23
|
+
# <b>Question 5 to App Config | What is the Secret?</b>
|
24
|
+
#
|
25
|
+
# The client may need to acquire the secret if the answer to question 4 indicates the need
|
26
|
+
# to instantiate the keys and encrypt the application's plaintext database. The application
|
27
|
+
# should facilitate communication of the secret via
|
28
|
+
#
|
29
|
+
# - an environment variable
|
30
|
+
# - the system clipboard (cleared after reading)
|
31
|
+
# - a file whose path is a command parameter
|
32
|
+
# - a file in a pre-agreed location
|
33
|
+
# - a file in the present directory (with a pre-agreed name)
|
34
|
+
# - a URL from a parameter or pre-agreed
|
35
|
+
# - the shell's secure password reader
|
36
|
+
# - the DConf / GConf or GSettings configuration stores
|
37
|
+
# - a REST API
|
38
|
+
# - password managers like LastPass, KeePassX or 1Pass
|
39
|
+
# - the Amazon KMS (Key Management Store)
|
40
|
+
# - vaults from Ansible, Terraform and Kubernetes
|
41
|
+
# - credential managers like GitSecrets and Credstash
|
42
|
+
#
|
23
43
|
# @param min_size [Integer] the minimum size of the collected secret
|
24
44
|
# whereby one (1) is the least we can expect. The maximum bound is
|
25
45
|
# not constrained here so will fall under what is allowed by the
|
data/lib/session/require.gem.rb
CHANGED
data/lib/usecase/cmd.rb
ADDED
@@ -0,0 +1,417 @@
|
|
1
|
+
#!/usr/bin/ruby
|
2
|
+
# coding: utf-8
|
3
|
+
|
4
|
+
module OpenSecret
|
5
|
+
|
6
|
+
# The parent OpenSecret use case is designed to be extended by the cli
|
7
|
+
# (command line) use cases like {OpenSecret::Open}, {OpenSecret::Put} and
|
8
|
+
# {OpenSecret::Lock} because it describes behaviour common to at least two
|
9
|
+
# (but usually more) of the use cases.
|
10
|
+
#
|
11
|
+
# == Common Use Case Behaviour
|
12
|
+
#
|
13
|
+
# This {OpenSecret::Command} use case is designed to be extended and does preparatory
|
14
|
+
# work to create favourable and useful conditions to make use cases readable,
|
15
|
+
# less repetitive, simpler and concise.
|
16
|
+
#
|
17
|
+
# == Machine (Workstation) Configuration File
|
18
|
+
#
|
19
|
+
# The global configuration filepath is found off the home directory using {Dir.home}.
|
20
|
+
#
|
21
|
+
# ~/.opensecret.io/opensecret.io.configuration.ini
|
22
|
+
#
|
23
|
+
# The global configuration file in INI format is managed through the methods
|
24
|
+
#
|
25
|
+
# - {grab} read the value at key_name from the default section
|
26
|
+
# - {stash} put directive key/value pair in default section
|
27
|
+
# - {read} read the value at key_name from the parameter section
|
28
|
+
# - {write} put directive key/value pair in parameter section
|
29
|
+
class Command
|
30
|
+
=begin
|
31
|
+
# ---> rename from [Command] to [UseCase]
|
32
|
+
# ---> rename from [Command] to [UseCase]
|
33
|
+
# ---> rename from [Command] to [UseCase]
|
34
|
+
# ---> rename from [Command] to [UseCase]
|
35
|
+
# ---> rename from [Command] to [UseCase]
|
36
|
+
# ---> rename from [Command] to [UseCase]
|
37
|
+
=end
|
38
|
+
|
39
|
+
# The name of the environment variable that will hold the session token
|
40
|
+
# generated by {self.generate_session_token}. This environment variable
|
41
|
+
# is typically instantiated either manually (for ad-hoc use) or through
|
42
|
+
# media such as dot profile.
|
43
|
+
ENV_VAR_KEY_NAME = "OPEN_SESSION_TOKEN"
|
44
|
+
|
45
|
+
|
46
|
+
# If and when this command line credentials management app needs to write
|
47
|
+
# any configuration directives to the machine's userspace it will use this
|
48
|
+
# constant to denote the (off-home) directory name.
|
49
|
+
APP_DIR_NAME = "opensecret.io"
|
50
|
+
|
51
|
+
# The path to the initial configuration file below the user's home
|
52
|
+
# directory. The directory name the configuration file sits in is
|
53
|
+
# a dot prefixed context name derived from the value inside the
|
54
|
+
# {APP_DIR_NAME} constant.
|
55
|
+
#
|
56
|
+
# ~/.<<context-name>>/<<context-name>>-configuration.ini
|
57
|
+
#
|
58
|
+
# You can see the filename too is derived from the context with a
|
59
|
+
# trailing string ending in <b>.ini</b>.
|
60
|
+
#
|
61
|
+
# @return [String] full path to the context configuration file
|
62
|
+
def config_file
|
63
|
+
return File.join config_directory(), "#{APP_DIR_NAME}.configuration.ini"
|
64
|
+
end
|
65
|
+
|
66
|
+
|
67
|
+
# This method returns the absolute path to the directory that the
|
68
|
+
# configuration file sits in. It is basically just the dot prefixed
|
69
|
+
# context name (the {APP_DIR_NAME} constant).
|
70
|
+
#
|
71
|
+
# ~/.<<context-name>>
|
72
|
+
#
|
73
|
+
# @return [String] path to directory holding context configuration file
|
74
|
+
def config_directory
|
75
|
+
return File.join( Dir.home, ".#{APP_DIR_NAME}" )
|
76
|
+
end
|
77
|
+
|
78
|
+
|
79
|
+
# Execute the use cases's flow from beginning when
|
80
|
+
# you validate the input and parameters through the
|
81
|
+
# memorize, execute and the final cleanup.
|
82
|
+
def flow_of_events
|
83
|
+
|
84
|
+
check_pre_conditions
|
85
|
+
execute
|
86
|
+
cleanup
|
87
|
+
check_post_conditions
|
88
|
+
|
89
|
+
end
|
90
|
+
|
91
|
+
|
92
|
+
# Validate the input parameters and check that the current
|
93
|
+
# state is perfect for executing the use case.
|
94
|
+
#
|
95
|
+
# If either of the above fail - the validation function should
|
96
|
+
# set a human readable string and then throw an exception.
|
97
|
+
def check_pre_conditions
|
98
|
+
|
99
|
+
|
100
|
+
begin
|
101
|
+
|
102
|
+
pre_validation
|
103
|
+
|
104
|
+
rescue OpenError::CliError => e
|
105
|
+
|
106
|
+
puts ""
|
107
|
+
puts "Your command did not complete successfully."
|
108
|
+
puts "Pre validation checks failed."
|
109
|
+
puts ""
|
110
|
+
puts " => #{e.message}"
|
111
|
+
puts ""
|
112
|
+
abort e.message
|
113
|
+
end
|
114
|
+
|
115
|
+
|
116
|
+
end
|
117
|
+
|
118
|
+
|
119
|
+
# After the main flow of events certain state conditions
|
120
|
+
# must hold true thus demonstrating that the observable
|
121
|
+
# value has indeed ben delivered.
|
122
|
+
#
|
123
|
+
# Child classes should subclass this method and place any
|
124
|
+
# post execution (post condition) checks in it and then
|
125
|
+
# make a call to this method through the "super" keyword.
|
126
|
+
def check_post_conditions
|
127
|
+
|
128
|
+
begin
|
129
|
+
|
130
|
+
post_validation
|
131
|
+
|
132
|
+
rescue OpenError::CliError => e
|
133
|
+
|
134
|
+
puts ""
|
135
|
+
puts "Your command did not complete successfully."
|
136
|
+
puts "Post validation checks failed."
|
137
|
+
puts ""
|
138
|
+
puts " => #{e.message}"
|
139
|
+
#### puts " => #{e.culprit}"
|
140
|
+
puts ""
|
141
|
+
abort e.message
|
142
|
+
end
|
143
|
+
|
144
|
+
end
|
145
|
+
|
146
|
+
|
147
|
+
# Child classes should subclass this method and place any
|
148
|
+
# post execution (post condition) checks in it and then
|
149
|
+
# make a call to this method through the "super" keyword if
|
150
|
+
# this method gets any global behaviour in it worth calling.
|
151
|
+
def post_validation
|
152
|
+
|
153
|
+
end
|
154
|
+
|
155
|
+
|
156
|
+
# Execute the main flow of events of the use case. Any
|
157
|
+
# exceptions thrown are captured and if the instance
|
158
|
+
# variale [@human_readable_message] is set - tell the
|
159
|
+
# user about it. Without any message - just tell the
|
160
|
+
# user something went wrong and tell them where the logs
|
161
|
+
# are that might carry more information.
|
162
|
+
def execute
|
163
|
+
|
164
|
+
end
|
165
|
+
|
166
|
+
|
167
|
+
# If the use case validation went well, the memorization
|
168
|
+
# went well the
|
169
|
+
def cleanup
|
170
|
+
|
171
|
+
end
|
172
|
+
|
173
|
+
|
174
|
+
# This use case is initialized primary by resolving the configured
|
175
|
+
# +general and use case specific facts+. To access the general facts,
|
176
|
+
# a domain name is expected in the parameter delegated by the extension
|
177
|
+
# use case classes.
|
178
|
+
def initialize
|
179
|
+
|
180
|
+
|
181
|
+
class_name = self.class.name.downcase.split(":").last
|
182
|
+
is_pre_init_usecase = [ "safe", "store", "email" ].include? class_name
|
183
|
+
return if is_pre_init_usecase
|
184
|
+
|
185
|
+
@ucid_str = self.class.name.do_flatten
|
186
|
+
log.info(x) { "Usecase class [self.class.name] converted to => #{@ucid_str}" }
|
187
|
+
@ucid_sym = @ucid_str.gsub(".", "_").to_sym
|
188
|
+
|
189
|
+
OpenSession::FactFind.instance.instantiate @ucid_str
|
190
|
+
OpenSession::FactFind.instance.assimilate "facts.opensecret.io.ini"
|
191
|
+
|
192
|
+
@c = OpenSession::FactFind.instance.f
|
193
|
+
@i = OpenSession::FactFind.instance.i
|
194
|
+
@p = OpenSession::FactFind.instance.f[@ucid_sym]
|
195
|
+
|
196
|
+
log.info(x) { "assimilated [#{@p.length}] facts specific to the [#{@ucid_str}] use case." }
|
197
|
+
|
198
|
+
end
|
199
|
+
|
200
|
+
|
201
|
+
private
|
202
|
+
|
203
|
+
|
204
|
+
ENV_PATH = "env.path"
|
205
|
+
KEY_PATH = "key.path"
|
206
|
+
ENVELOPE_KEY_PREFIX = "envelope@"
|
207
|
+
|
208
|
+
LAST_ACCESSED = "last.accessed.time"
|
209
|
+
|
210
|
+
SESSION_DICT_LOCK_SIZE = 32
|
211
|
+
|
212
|
+
SESSION_DICT_LOCK_NAME = "crypted.session.dict.lock"
|
213
|
+
|
214
|
+
ENVELOPE_KEY_SIZE = 32
|
215
|
+
|
216
|
+
ENVELOPE_KEY_NAME = "crypted.envelope.key"
|
217
|
+
|
218
|
+
ENVELOPE_ID_SIZE = 16
|
219
|
+
|
220
|
+
ENVELOPE_ID_NAME = "crypted.envelope.id"
|
221
|
+
|
222
|
+
SESSION_ID_SIZE = 64
|
223
|
+
|
224
|
+
SESSION_FILENAME_ID_SIZE = 24
|
225
|
+
|
226
|
+
SESSION_START_TIMESTAMP_NAME = "session.creation.time"
|
227
|
+
|
228
|
+
MASTER_LOCK_KEY_NAME = "master.session.lock.key"
|
229
|
+
|
230
|
+
APPLICATION_GEM_NAME = "opensecret"
|
231
|
+
APPLICATION_GEM_WEBSITE = "https://www.devopswiki.co.uk"
|
232
|
+
APPLICATION_GITHUB_URL = "https://github.io/opensecret.io"
|
233
|
+
|
234
|
+
|
235
|
+
def create_header()
|
236
|
+
|
237
|
+
return OpenKey::KeyApi.format_header(
|
238
|
+
OpenSecret::VERSION,
|
239
|
+
APPLICATION_GEM_NAME,
|
240
|
+
APPLICATION_GITHUB_URL,
|
241
|
+
@domain_name
|
242
|
+
)
|
243
|
+
|
244
|
+
end
|
245
|
+
|
246
|
+
|
247
|
+
|
248
|
+
def ops_key_exists?
|
249
|
+
|
250
|
+
log_env()
|
251
|
+
|
252
|
+
if ( ENV.has_key? ENV_VAR_KEY_NAME )
|
253
|
+
return true
|
254
|
+
end
|
255
|
+
|
256
|
+
puts ""
|
257
|
+
puts "opensecret needs you to create a session key."
|
258
|
+
puts "To automate this step see the documentation."
|
259
|
+
puts "To create the key run the below command."
|
260
|
+
puts ""
|
261
|
+
puts " export OPEN_SESSION_TOKEN=`ops token`"
|
262
|
+
puts ""
|
263
|
+
puts "Those are backticks surrounding `ops token`"
|
264
|
+
puts "Not apostrophes."
|
265
|
+
puts ""
|
266
|
+
|
267
|
+
return false
|
268
|
+
|
269
|
+
end
|
270
|
+
|
271
|
+
|
272
|
+
def log_env()
|
273
|
+
|
274
|
+
log.info(x) { "Gem Root Folder => #{Gem.dir()}" }
|
275
|
+
log.info(x) { "Gem Config File => #{Gem.config_file()}" }
|
276
|
+
log.info(x) { "Gem Binary Path => #{Gem.default_bindir()}" }
|
277
|
+
log.info(x) { "Gem Host Path => #{Gem.host()}" }
|
278
|
+
log.info(x) { "Gem Spec Info => #{Gem.latest_spec_for(APPLICATION_GEM_NAME)}" }
|
279
|
+
log.info(x) { "Gem Spec Name => #{Gem.latest_spec_for(APPLICATION_GEM_NAME).name}" }
|
280
|
+
log.info(x) { "Gem Spec Version => #{Gem.latest_spec_for(APPLICATION_GEM_NAME).version}" }
|
281
|
+
log.info(x) { "Gem Caller Folder => #{Gem.location_of_caller()}" }
|
282
|
+
log.info(x) { "Gem Paths List => #{Gem.path()}" }
|
283
|
+
log.info(x) { "Gem Platforms => #{Gem.platforms()}" }
|
284
|
+
log.info(x) { "Gem Ruby Version X => #{Gem.ruby()}" }
|
285
|
+
log.info(x) { "Gem Ruby Version Y => #{Gem::VERSION}" }
|
286
|
+
log.info(x) { "Gem Ruby Version Z => #{Gem.latest_rubygems_version()}" }
|
287
|
+
log.info(x) { "Gem User Folder => #{Gem.user_dir()}" }
|
288
|
+
log.info(x) { "Gem User Home => #{Gem.user_home()}" }
|
289
|
+
|
290
|
+
return
|
291
|
+
|
292
|
+
end
|
293
|
+
|
294
|
+
|
295
|
+
def unopened_envelope?( key_database )
|
296
|
+
|
297
|
+
return false if key_database.has_key?( ENV_PATH )
|
298
|
+
print_unopened_envelope()
|
299
|
+
return true
|
300
|
+
|
301
|
+
end
|
302
|
+
|
303
|
+
|
304
|
+
def print_unopened_envelope()
|
305
|
+
|
306
|
+
puts ""
|
307
|
+
puts "Oops - before creating, reading or changing data you"
|
308
|
+
puts "must first open a path to it like this."
|
309
|
+
puts ""
|
310
|
+
puts " ops open email.accounts joe@gmail.com"
|
311
|
+
puts ""
|
312
|
+
puts " then you put data at that path"
|
313
|
+
puts ""
|
314
|
+
puts " ops put username joebloggs"
|
315
|
+
puts " ops put password jo3s-s3cr3t"
|
316
|
+
puts " ops put phone-no 07123456789"
|
317
|
+
puts " ops put question \"Mums maiden name\""
|
318
|
+
puts ""
|
319
|
+
puts " and why not read it back"
|
320
|
+
puts ""
|
321
|
+
puts " ops get password"
|
322
|
+
puts ""
|
323
|
+
puts " then close the path."
|
324
|
+
puts ""
|
325
|
+
puts " ops close"
|
326
|
+
puts ""
|
327
|
+
|
328
|
+
end
|
329
|
+
|
330
|
+
|
331
|
+
def print_already_logged_in
|
332
|
+
|
333
|
+
puts ""
|
334
|
+
puts "We are already logged in. Open a secret envelope, put, then seal."
|
335
|
+
puts ""
|
336
|
+
puts " ops open aws.credentials:s3reader"
|
337
|
+
puts " ops put access_key ABCD1234"
|
338
|
+
puts " ops put secret_key FGHIJ56789"
|
339
|
+
puts " ops put region_key eu-central-1"
|
340
|
+
puts " ops seal"
|
341
|
+
puts ""
|
342
|
+
|
343
|
+
end
|
344
|
+
|
345
|
+
|
346
|
+
def print_already_initialized
|
347
|
+
|
348
|
+
puts ""
|
349
|
+
puts "You can go ahead and login."
|
350
|
+
puts "Your domain [#{@domain_name}] is already setup."
|
351
|
+
puts "You should already know the password."
|
352
|
+
puts ""
|
353
|
+
puts " ops login #{@domain_name}"
|
354
|
+
puts ""
|
355
|
+
|
356
|
+
end
|
357
|
+
|
358
|
+
|
359
|
+
def print_domain_initialized
|
360
|
+
|
361
|
+
puts ""
|
362
|
+
puts "It is time to login."
|
363
|
+
puts "The protector keys for [#{@domain_name}] have been setup."
|
364
|
+
puts "From now on you simply login to use this domain."
|
365
|
+
puts ""
|
366
|
+
puts " ops login #{@domain_name}"
|
367
|
+
puts ""
|
368
|
+
|
369
|
+
end
|
370
|
+
|
371
|
+
|
372
|
+
def print_not_initialized
|
373
|
+
|
374
|
+
puts ""
|
375
|
+
puts "Please initialize the app domain on this machine."
|
376
|
+
puts "Give a domain name and a folder for key storage."
|
377
|
+
puts ""
|
378
|
+
puts " ops init <domain_name> \"$HOME/open.world\""
|
379
|
+
puts ""
|
380
|
+
|
381
|
+
end
|
382
|
+
|
383
|
+
|
384
|
+
def print_success_initializing
|
385
|
+
|
386
|
+
puts ""
|
387
|
+
puts "Success - now open a secret envelope, put, then seal."
|
388
|
+
puts ""
|
389
|
+
puts " ops open aws.credentials:s3reader"
|
390
|
+
puts " ops put access_key ABCD1234"
|
391
|
+
puts " ops put secret_key FGHIJ56789"
|
392
|
+
puts " ops put region_key eu-central-1"
|
393
|
+
puts " ops seal"
|
394
|
+
puts ""
|
395
|
+
|
396
|
+
end
|
397
|
+
|
398
|
+
|
399
|
+
def print_login_success
|
400
|
+
|
401
|
+
puts ""
|
402
|
+
puts "Success - you are logged in."
|
403
|
+
puts ""
|
404
|
+
puts " ops open aws.credentials:s3reader"
|
405
|
+
puts " ops put access_key ABCD1234"
|
406
|
+
puts " ops put secret_key FGHIJ56789"
|
407
|
+
puts " ops put region_key eu-central-1"
|
408
|
+
puts " ops seal"
|
409
|
+
puts ""
|
410
|
+
|
411
|
+
end
|
412
|
+
|
413
|
+
|
414
|
+
end
|
415
|
+
|
416
|
+
|
417
|
+
end
|