This commit is contained in:
2025-03-26 09:01:39 -05:00
parent ccaab11f45
commit b9e144243d
2 changed files with 113 additions and 113 deletions

View File

@@ -7,44 +7,44 @@
- total number of properties: 54
## Customer Cipher
- property key: [54514 1965 53378 19192 22047 51452 10113 45652 29057 9429 21502 46988
49588 18367 49270 58262 42600 57355 6832 60785 43122 21094 14401 36145
20935 57304 48338 48291 26673 19914 28977 28652 19987 31121 12774 35536
48255 12852 54678 55834 85 26003 45160 20835 54874 52921 15169 50516
60357 42125 30022 45817 60130 11197]
- position key: [48112 26772 62306 37312 9280 53287 8575 52285 23223]
- property key: [12463 12679 30383 52780 48100 5096 61398 5750 59949 16574 25395 8158
51151 56863 52932 11578 50839 38005 12741 42227 40877 7172 53174 60400
12356 13971 19389 64980 16810 26389 39074 63833 12649 64422 4920 54703
62742 25787 26216 4453 38866 27951 36713 37903 22497 4454 55622 38346
31982 51225 48698 29699 36128 33748]
- position key: [56601 6465 12615 40545 49643 37783 59315 4335 13897]
---
## User Cipher
- property key: [25402 45448 18385 37857 57541 32953 19697 45767 30288 57822 46599 257
21882 41216 65271 33191 57236 24801 10848 60418 40003 30516 42964 54926
4678 57740 23458 22941 19199 13444 34602 28269 28151 31470 11589 62172
53096 14757 9376 55563 54085 33633 7682 13084 27027 41237 11751 3039
37222 20544 22215 44963 6713 65186]
- passcode key: [28538 33084 55942 23635 1822 36202 45572 34373 48530 20714]
- combined position key: [57013 27802 42252 20840 26015 37308 27613 15454 15422]
- mask key: [29393 54843 61220 63539 63750 28279 20755 38066 32824 58482]
- property key: [14898 49243 46261 43286 743 60989 43535 48626 62301 50822 24597 10059
48516 48141 42915 36062 3286 11914 44159 34414 20879 14779 26916 49959
52279 29970 35884 62523 22453 25290 37000 30416 6102 20665 42719 23156
54785 3366 46811 57278 42429 58327 26021 27943 614 26543 63962 45468
15599 34845 22766 44215 32257 43746]
- passcode key: [ 4981 30039 31839 45969 48275 35799 10819 2121 61259 48949]
- combined position key: [58180 35354 39081 61964 32045 26428 24571 62221 62362]
- mask key: [ 3841 58027 55280 33679 39465 22075 10291 60287 27680 15384]
### Combined Postion Key
```mermaid
block-beta
columns 2
user_pos["user position key:\n[16087 54566 2672 43037 1335 65132 16145 49723 39280]"]
customer_pos["customer position key:\n[48112 26772 62306 37312 9280 53287 8575 52285 23223]"]
user_pos["user position key:\n[57725 11307 31071 28372 27611 49409 15121 51933 25996]"]
customer_pos["customer position key:\n[56601 6465 12615 40545 49643 37783 59315 4335 13897]"]
space:2
xor(("XOR")):2
user_pos --> xor
customer_pos --> xor
space:2
comb_pos["combined position key\n[57013 27802 42252 20840 26015 37308 27613 15454 15422]"]:2
comb_pos["combined position key\n[58180 35354 39081 61964 32045 26428 24571 62221 62362]"]:2
xor --> comb_pos
```
## User Keypad
- keypad example:<br/>Key 0: [27 1 2 48 31 41 24 7 17]<br/>Key 1: [45 10 11 39 4 50 42 25 53]<br/>Key 2: [ 9 19 29 3 40 32 51 16 8]<br/>Key 3: [18 37 38 21 22 14 33 43 44]<br/>Key 4: [ 0 28 47 30 49 5 15 34 26]<br/>Key 5: [36 46 20 12 13 23 6 52 35]<br/>
- user passcode indices: [28, 24, 34, 1]
- keypad example:<br/>Key 0: [18 19 2 21 31 5 6 43 17]<br/>Key 1: [ 9 46 29 30 49 32 42 52 35]<br/>Key 2: [27 10 20 48 40 14 33 34 44]<br/>Key 3: [45 28 47 12 4 23 51 25 26]<br/>Key 4: [ 0 1 38 3 22 41 24 16 53]<br/>Key 5: [36 37 11 39 13 50 15 7 8]<br/>
- user passcode indices: [6, 43, 53, 9]
## nKode Cipher
@@ -52,54 +52,54 @@ block-beta
```mermaid
block-beta
columns 2
cprop["customer_property_key\n[54514 1965 53378 19192 22047 51452 10113 45652 29057 9429 21502 46988
49588 18367 49270 58262 42600 57355 6832 60785 43122 21094 14401 36145
20935 57304 48338 48291 26673 19914 28977 28652 19987 31121 12774 35536
48255 12852 54678 55834 85 26003 45160 20835 54874 52921 15169 50516
60357 42125 30022 45817 60130 11197]"]
uprop["user_property_key\n[25402 45448 18385 37857 57541 32953 19697 45767 30288 57822 46599 257
21882 41216 65271 33191 57236 24801 10848 60418 40003 30516 42964 54926
4678 57740 23458 22941 19199 13444 34602 28269 28151 31470 11589 62172
53096 14757 9376 55563 54085 33633 7682 13084 27027 41237 11751 3039
37222 20544 22215 44963 6713 65186]"]
cprop["customer_property_key\n[12463 12679 30383 52780 48100 5096 61398 5750 59949 16574 25395 8158
51151 56863 52932 11578 50839 38005 12741 42227 40877 7172 53174 60400
12356 13971 19389 64980 16810 26389 39074 63833 12649 64422 4920 54703
62742 25787 26216 4453 38866 27951 36713 37903 22497 4454 55622 38346
31982 51225 48698 29699 36128 33748]"]
uprop["user_property_key\n[14898 49243 46261 43286 743 60989 43535 48626 62301 50822 24597 10059
48516 48141 42915 36062 3286 11914 44159 34414 20879 14779 26916 49959
52279 29970 35884 62523 22453 25290 37000 30416 6102 20665 42719 23156
54785 3366 46811 57278 42429 58327 26021 27943 614 26543 63962 45468
15599 34845 22766 44215 32257 43746]"]
space:2
xor1(("XOR")):2
cprop --> xor1
uprop --> xor1
space:2
prop["combined_property_key\n[22860 48501 43623 2691 11008 34410 41991 51506 29272 24365 54234 54358
3371 32869 56118 23725 27650 38652 25509 24668 2625 31115 7846 1530
28577 8896 10269 5837 40269 59501 63202 34622 24010 60186 38638 52779
27566 57898 58845 6587 13015 10925 7087 34598 49492 27689 9569 8776
60168 63531 64702 53160 62709 51058]"]
prop["combined_property_key\n[ 2598 13817 3743 55138 48519 14914 34131 3917 24848 29635 52388 57749
31090 24065 22959 61051 34121 30393 691 47015 26630 54959 13562 20862
31358 35382 39584 57405 53720 45712 49496 53667 35073 25844 36156 57792
30240 21451 23037 3839 61742 34083 35502 63962 25413 50263 31741 63116
30806 16519 51243 8712 32194 8269]"]
xor1 --> prop
pass["user_passcode_indices\n[28, 24, 34, 1]"]
pass["user_passcode_indices\n[6, 43, 53, 9]"]
space:2
sel(("select\nproperties")):2
pass --> sel
prop --> sel
space:2
passcode["user passcode properties:\n[40269 28577 38638 48501]"]:2
passcode["user passcode properties:\n[34131 63962 8269 29635]"]:2
sel --> passcode
space:2
pad["zero pad to\nmax nkode length: 10"]:2
passcode -->pad
space:2
paddedpasscode["padded passcode:\n[40269 28577 38638 48501 0 0 0 0 0 0]"]
paddedpasscode["padded passcode:\n[34131 63962 8269 29635 0 0 0 0 0 0]"]
pad --> paddedpasscode
passkey["passcode key:\n[28538 33084 55942 23635 1822 36202 45572 34373 48530 20714]"]
passkey["passcode key:\n[ 4981 30039 31839 45969 48275 35799 10819 2121 61259 48949]"]
space:2
xor2(("XOR")):2
passkey --> xor2
paddedpasscode --> xor2
space:2
cipheredpass["ciphered passcode:\n[62007 61085 19560 57638 1822 36202 45572 34373 48530 20714]"]:2
cipheredpass["ciphered passcode:\n[38438 35981 23570 49234 48275 35799 10819 2121 61259 48949]"]:2
xor2 --> cipheredpass
space:2
hash(("hash")):2
cipheredpass --> hash
space:2
cipheredhashed["hashed ciphered passcode:\n$2b$12$YW2vbeWXlAc3TdUGX9l8gOghIZ3ZQSMF8ia2K0Bj5dzmtUlx3hWqS"]:2
cipheredhashed["hashed ciphered passcode:\n$2b$12$rF1TSRHSHfOTE4V/7ZCv3.Plqb1AysifW1KvR96K7CbC1sPt1ungK"]:2
hash --> cipheredhashed
```
@@ -107,9 +107,9 @@ block-beta
```mermaid
block-beta
columns 3
passcode_idx["passcode indices:\n[28, 24, 34, 1]"]
comb_pos["combined position key:\n[57013 27802 42252 20840 26015 37308 27613 15454 15422]"]
cust_pos["customer position key:\n[48112 26772 62306 37312 9280 53287 8575 52285 23223]"]
passcode_idx["passcode indices:\n[6, 43, 53, 9]"]
comb_pos["combined position key:\n[58180 35354 39081 61964 32045 26428 24571 62221 62362]"]
cust_pos["customer position key:\n[56601 6465 12615 40545 49643 37783 59315 4335 13897]"]
space:3
propidx(["Get Position Idx:\nmap each to element mod props_per_key"])
@@ -120,7 +120,7 @@ block-beta
cust_pos --> xor1
space:3
passcode_position_idx["passcode poition indices:\n[1, 6, 7, 1]"]
passcode_position_idx["passcode poition indices:\n[6, 7, 8, 0]"]
propidx --> passcode_position_idx
space:5
@@ -128,10 +128,10 @@ block-beta
passcode_position_idx --> pad1
space:5
posidx["Padded Passcode Position Indices:\n[1, 6, 7, 1, 5, 0, 8, 6, 2, 0]"]
posidx["Padded Passcode Position Indices:\n[6, 7, 8, 0, 1, 1, 2, 3, 0, 5]"]
pad1 --> posidx
space:1
user_pos["user position key:\n[16087 54566 2672 43037 1335 65132 16145 49723 39280]"]
user_pos["user position key:\n[57725 11307 31071 28372 27611 49409 15121 51933 25996]"]
xor1 --> user_pos
space:4
@@ -139,15 +139,15 @@ block-beta
user_pos --> sel
posidx --> sel
space:5
passcode_pos["ordered user passcode positions:\n[54566 16145 49723 54566 65132 16087 39280 16145 2672 16087]"]
passcode_pos["ordered user passcode positions:\n[15121 51933 25996 57725 11307 11307 31071 28372 57725 49409]"]
sel --> passcode_pos
mask_key["mask key\n[29393 54843 61220 63539 63750 28279 20755 38066 32824 58482]"]
mask_key["mask key\n[ 3841 58027 55280 33679 39465 22075 10291 60287 27680 15384]"]
space:4
xor2(("XOR"))
mask_key --> xor2
passcode_pos --> xor2
space:5
mask["enciphered mask:\n [42999 59690 11551 11541 1898 20640 51299 43939 35400 55973]"]
mask["enciphered mask:\n [13328 10358 45692 25330 46594 31248 20844 34219 36189 64793]"]
xor2 --> mask
```
@@ -156,34 +156,34 @@ block-beta
```mermaid
block-beta
columns 3
pass["user_passcode_indices\n[28, 24, 34, 1]"]
login_keypad["login keypad:\nKey 0: [27 1 2 48 31 41 24 7 17]
Key 1: [45 10 11 39 4 50 42 25 53]
Key 2: [ 9 19 29 3 40 32 51 16 8]
Key 3: [18 37 38 21 22 14 33 43 44]
Key 4: [ 0 28 47 30 49 5 15 34 26]
Key 5: [36 46 20 12 13 23 6 52 35]
selected_keys["selected keys:\n[0, 0, 4, 1]"]
login_keypad["login keypad:\nKey 0: [18 19 2 21 31 5 6 43 17]
Key 1: [ 9 46 29 30 49 32 42 52 35]
Key 2: [27 10 20 48 40 14 33 34 44]
Key 3: [45 28 47 12 4 23 51 25 26]
Key 4: [ 0 1 38 3 22 41 24 16 53]
Key 5: [36 37 11 39 13 50 15 7 8]
"]
space:4
selectkeys(("select keys"))
mask["enciphered mask:\n [42999 59690 11551 11541 1898 20640 51299 43939 35400 55973]"]
mask_key["mask key:\n[29393 54843 61220 63539 63750 28279 20755 38066 32824 58482]"]
mask["enciphered mask:\n [13328 10358 45692 25330 46594 31248 20844 34219 36189 64793]"]
mask_key["mask key:\n[ 3841 58027 55280 33679 39465 22075 10291 60287 27680 15384]"]
space:2
xor1(("XOR"))
mask --> xor1
mask_key --> xor1
pass --> selectkeys
selected_keys --> selectkeys
login_keypad --> selectkeys
space:3
ordered_keys["ordered keys:\n[[ 0 28 47 30 49 5 15 34 26]
[27 1 2 48 31 41 24 7 17]
[ 0 28 47 30 49 5 15 34 26]
[27 1 2 48 31 41 24 7 17]]"]
user_position_key["user position key:\n[16087 54566 2672 43037 1335 65132 16145 49723 39280]"]
passcode_pos["ordered user passcode positions:\n[54566 16145 49723 54566 65132 16087 39280 16145 2672 16087]"]
ordered_keys["ordered keys:\n[[18 19 2 21 31 5 6 43 17]
[18 19 2 21 31 5 6 43 17]
[ 0 1 38 3 22 41 24 16 53]
[ 9 46 29 30 49 32 42 52 35]]"]
user_position_key["user position key:\n[57725 11307 31071 28372 27611 49409 15121 51933 25996]"]
passcode_pos["ordered user passcode positions:\n[15121 51933 25996 57725 11307 11307 31071 28372 57725 49409]"]
selectkeys --> ordered_keys
xor1 --> passcode_pos
space:8
@@ -193,7 +193,7 @@ Key 5: [36 46 20 12 13 23 6 52 35]
passcode_pos --> get_passcode_idxs
space:8
passcode_pos_idxs["padded passcode position indices:\n[1, 6, 7, 1, 5, 0, 8, 6, 2, 0]"]
passcode_pos_idxs["padded passcode position indices:\n[6, 7, 8, 0, 1, 1, 2, 3, 0, 5]"]
get_passcode_idxs --> passcode_pos_idxs
space:3
@@ -202,13 +202,13 @@ Key 5: [36 46 20 12 13 23 6 52 35]
passcode_pos_idxs --> get_presumed_idxs
space:5
passcode_prop_idxs["presumed passcode property indices:\n[28, 24, 34, 1]"]
prop["combined_property_key\n[22860 48501 43623 2691 11008 34410 41991 51506 29272 24365 54234 54358
3371 32869 56118 23725 27650 38652 25509 24668 2625 31115 7846 1530
28577 8896 10269 5837 40269 59501 63202 34622 24010 60186 38638 52779
27566 57898 58845 6587 13015 10925 7087 34598 49492 27689 9569 8776
60168 63531 64702 53160 62709 51058]"]
cipheredhashed["hashed ciphered passcode:\n$2b$12$YW2vbeWXlAc3TdUGX9l8gOghIZ3ZQSMF8ia2K0Bj5dzmtUlx3hWqS"]
passcode_prop_idxs["presumed passcode property indices:\n[6, 43, 53, 9]"]
prop["combined_property_key\n[ 2598 13817 3743 55138 48519 14914 34131 3917 24848 29635 52388 57749
31090 24065 22959 61051 34121 30393 691 47015 26630 54959 13562 20862
31358 35382 39584 57405 53720 45712 49496 53667 35073 25844 36156 57792
30240 21451 23037 3839 61742 34083 35502 63962 25413 50263 31741 63116
30806 16519 51243 8712 32194 8269]"]
cipheredhashed["hashed ciphered passcode:\n$2b$12$rF1TSRHSHfOTE4V/7ZCv3.Plqb1AysifW1KvR96K7CbC1sPt1ungK"]
get_presumed_idxs --> passcode_prop_idxs
space:3
@@ -217,7 +217,7 @@ Key 5: [36 46 20 12 13 23 6 52 35]
prop --> sel
space:5
passcode_prop["presumed passcode properties:\n[40269 28577 38638 48501]"]
passcode_prop["presumed passcode properties:\n[34131 63962 8269 29635]"]
sel --> passcode_prop
space:5
@@ -225,7 +225,7 @@ Key 5: [36 46 20 12 13 23 6 52 35]
passcode_prop --> cipher
space:5
cipheredpass["ciphered passcode:\n[62007 61085 19560 57638 1822 36202 45572 34373 48530 20714]"]
cipheredpass["ciphered passcode:\n[38438 35981 23570 49234 48275 35799 10819 2121 61259 48949]"]
cipher --> cipheredpass
space:7
@@ -250,26 +250,26 @@ nKode renewal is a three step process:
```mermaid
flowchart
subgraph Renew Customer Keys
old_prop["`old customer property key:<br/>[14966 3325 60854 39266 52165 1747 59638 31733 1032 48883 26077 54615
22609 8549 9665 56586 45974 63005 18885 35934 38402 3775 47474 54132
32231 49996 29631 20304 55218 56553 29128 59731 12349 37364 48043 15607
42182 56207 49533 49328 57746 43468 1453 46138 43207 52540 2182 10647
31342 43115 43641 24587 61132 14800]`"]
new_prop["`new customer property key:<br/>[54514 1965 53378 19192 22047 51452 10113 45652 29057 9429 21502 46988
49588 18367 49270 58262 42600 57355 6832 60785 43122 21094 14401 36145
20935 57304 48338 48291 26673 19914 28977 28652 19987 31121 12774 35536
48255 12852 54678 55834 85 26003 45160 20835 54874 52921 15169 50516
60357 42125 30022 45817 60130 11197]`"]
old_pos["`old customer position key:<br/>[57442 47548 44924 63861 24744 28624 21708 65125 42318]`"]
new_pos["`new customer position key:<br/>[48112 26772 62306 37312 9280 53287 8575 52285 23223]`"]
old_prop["`old customer property key:<br/>[12308 62882 47658 32372 48992 54399 12124 45759 37453 46405 44209 50910
50422 57868 65036 25253 35231 22579 44748 12745 14729 61204 24030 37465
46665 65316 5772 5126 34413 53338 20944 42867 40663 13389 11235 48052
40993 24301 61222 53569 21651 26356 61195 38141 24867 41976 33319 18192
17593 51354 37061 36543 963 35503]`"]
new_prop["`new customer property key:<br/>[12463 12679 30383 52780 48100 5096 61398 5750 59949 16574 25395 8158
51151 56863 52932 11578 50839 38005 12741 42227 40877 7172 53174 60400
12356 13971 19389 64980 16810 26389 39074 63833 12649 64422 4920 54703
62742 25787 26216 4453 38866 27951 36713 37903 22497 4454 55622 38346
31982 51225 48698 29699 36128 33748]`"]
old_pos["`old customer position key:<br/>[ 569 42545 57846 40152 5878 42557 25834 14800 38422]`"]
new_pos["`new customer position key:<br/>[56601 6465 12615 40545 49643 37783 59315 4335 13897]`"]
xor1(("XOR"))
xor2(("XOR"))
xor_prop["`xor property key:<br/>[61060 2896 15668 54170 40410 52783 53111 51617 30089 39462 13859 25307
39397 26330 58807 16028 5630 5654 21365 24879 15984 23769 33075 24133
11296 7316 53101 62451 49027 37155 249 34495 32302 59493 35405 46631
6329 59835 5355 6826 57799 52319 46533 58713 32413 901 13255 60611
37291 3302 57151 54002 1070 4717]`"]
xor_pos["`xor position key:<br/>[23442 53544 23582 26805 17640 49143 30131 12888 65529]`"]
xor_prop["`xor property key:<br/>[ 187 50213 52357 45144 1156 51095 49290 42185 30816 62971 53122 55552
825 15379 12488 20383 20232 52294 40713 38202 42532 62224 37480 31145
34317 51639 23857 59858 51143 46927 51570 24106 44990 53227 14555 28187
21815 14934 35150 49188 49985 3035 24674 242 14018 45726 23393 53978
14423 131 12031 64188 36579 2427]`"]
xor_pos["`xor position key:<br/>[57120 49008 53425 697 55069 13738 33625 10559 41055]`"]
old_prop --> xor1
new_prop --> xor1
xor1 --> xor_prop
@@ -283,12 +283,12 @@ nKode renewal is a three step process:
users --> eachuser
subgraph eachuser [for each user]
subgraph old user keys
old_user_pos["`combined position key:<br/>[16087 54566 2672 43037 1335 65132 16145 49723 39280]`"]
old_user_prop["`property key:<br/>[25402 45448 18385 37857 57541 32953 19697 45767 30288 57822 46599 257
21882 41216 65271 33191 57236 24801 10848 60418 40003 30516 42964 54926
4678 57740 23458 22941 19199 13444 34602 28269 28151 31470 11589 62172
53096 14757 9376 55563 54085 33633 7682 13084 27027 41237 11751 3039
37222 20544 22215 44963 6713 65186]`"]
old_user_pos["`combined position key:<br/>[57725 11307 31071 28372 27611 49409 15121 51933 25996]`"]
old_user_prop["`property key:<br/>[14898 49243 46261 43286 743 60989 43535 48626 62301 50822 24597 10059
48516 48141 42915 36062 3286 11914 44159 34414 20879 14779 26916 49959
52279 29970 35884 62523 22453 25290 37000 30416 6102 20665 42719 23156
54785 3366 46811 57278 42429 58327 26021 27943 614 26543 63962 45468
15599 34845 22766 44215 32257 43746]`"]
old_renew["renew: False"]
end
xor3(("XOR"))
@@ -300,12 +300,12 @@ nKode renewal is a three step process:
xor_prop --> xor4
xor4 --> inter_user_prop
subgraph inter_user[intermediate user keys]
inter_user_pos["`combined position key:<br/>[34087 48562 63762 14813 8567 11851 7790 3590 50119]`"]
inter_user_prop["`property key:<br/>[36286 47832 31461 16507 32031 20118 33670 31590 985 31736 32804 25562
52383 51162 6976 48955 51818 30455 30997 36141 41523 11245 9959 35019
15974 64792 38095 43630 62844 42407 34771 59602 5081 37515 42760 17659
55249 53278 12363 50081 12930 20286 43975 54853 5902 41616 7712 59164
205 23718 35320 32081 7703 60623]`"]
inter_user_pos["`combined position key:<br/>[15460 13674 18456 61621 43568 21142 56482 55858 21445]`"]
inter_user_prop["`property key:<br/>[14985 1150 30768 6478 1635 10666 27269 6459 35645 13181 44951 65099
48829 32798 38763 49985 17374 58060 13174 4948 63403 51883 64332 47758
19002 48293 53533 7657 36978 54661 23034 10490 47208 40786 40452 13423
33590 14192 16277 8090 26364 59404 1479 28117 13476 54577 41659 25414
1208 34974 30225 22027 61666 41881]`"]
inter_renew["renew: True"]
end
end
@@ -316,12 +316,12 @@ nKode renewal is a three step process:
login["First login post renew"]
inter_user --> login
subgraph new_user [New User Keys]
new_user_pos["`combined position key:<br/>[30180 41733 51338 65033 46822 22413 14740 11265 36086]`"]
new_user_prop["`property key:<br/>[63029 58440 35697 22366 54518 106 30872 42634 43391 56303 8441 57457
40463 15976 60517 30636 40657 60903 39392 12539 19960 16602 3225 8105
30680 64909 9750 19292 15934 38070 9733 36553 61894 2864 25710 48492
54051 23592 44246 3991 38055 9064 51185 33976 39567 54282 59604 15986
12137 21928 16931 38440 25594 42613]`"]
new_user_pos["`combined position key:<br/>[47033 63959 2503 19274 39057 42505 33376 18119 33917]`"]
new_user_prop["`property key:<br/>[39652 18270 5028 34303 6339 45092 14652 39608 18788 7857 4800 6775
27243 640 51816 11487 16139 34341 38485 4249 44601 62920 30209 8343
19333 26092 3947 16867 32616 6792 36914 19857 1483 51567 23049 15969
48502 8758 26851 13558 39754 23725 1217 61491 64601 5714 32155 53045
11055 63186 5924 56720 60612 13766]`"]
new_renew["renew: False"]
end
login --> new_user

View File

@@ -136,7 +136,7 @@ block-beta
```mermaid
block-beta
columns 3
pass["user_passcode_indices\n{{user_passcode_idxs}}"]
selected_keys["selected keys:\n{{selected_keys}}"]
login_keypad["login keypad:\n{{login_keypad}}"]
space:4
@@ -148,7 +148,7 @@ block-beta
xor1(("XOR"))
mask --> xor1
mask_key --> xor1
pass --> selectkeys
selected_keys --> selectkeys
login_keypad --> selectkeys
space:3