From 10c83ac965548026987b37a755f34f10f323b705 Mon Sep 17 00:00:00 2001 From: Donovan Date: Wed, 26 Mar 2025 08:05:31 -0500 Subject: [PATCH] update renew --- docs/encipher_decipher_renew_nkode.md | 230 +++++++++--------- .../encipher_decipher_renew_nkode.template.md | 12 +- .../Enrollment_Login_Renewal_Detailed.ipynb | 10 +- 3 files changed, 126 insertions(+), 126 deletions(-) diff --git a/docs/encipher_decipher_renew_nkode.md b/docs/encipher_decipher_renew_nkode.md index 2c15365..f25c2a4 100644 --- a/docs/encipher_decipher_renew_nkode.md +++ b/docs/encipher_decipher_renew_nkode.md @@ -7,44 +7,44 @@ - total number of properties: 54 ## Customer Cipher -- property key: [40493 16536 22567 8632 16931 48077 38465 62133 61510 60074 30483 15029 - 32328 35555 12264 4839 56666 52299 23010 54024 11530 38809 33384 9334 - 53340 25808 36388 7068 48724 2963 19292 41164 31037 24848 7109 29039 - 26458 18532 7462 19458 51071 45191 60228 22739 41943 36765 29356 35589 - 3387 28997 31698 23822 30837 4299] -- position key: [ 8625 16938 65018 7492 24125 667 1225 54737 47670] +- property key: [12683 37623 46427 24232 53244 25444 34138 18278 52542 17394 45705 57706 + 22403 60684 20477 13672 47069 29025 8419 8211 36163 21756 45607 31517 + 44312 19522 17814 41879 18325 2622 43956 30841 59391 52171 51029 44917 + 28846 25756 24212 4239 11940 31284 58701 7692 31504 25629 20378 35504 + 45861 59860 4819 52686 62304 58952] +- position key: [29587 60364 47856 53105 61491 65374 34021 4048 33167] --- ## User Cipher -- property key: [57486 43228 16207 60359 59029 6255 7588 52492 24710 2551 40990 56898 - 56863 1051 48892 2945 40292 31660 45216 53538 40537 15451 52595 37467 - 3706 19342 38794 33132 21407 3639 12679 9190 10068 50771 64668 35246 - 60714 28831 4623 8674 56989 23715 57671 23914 51409 36438 10577 34976 - 29440 9581 47915 29410 39979 5656] -- passcode key: [21257 32848 55275 58059 52662 31196 41361 14925 10153 11854] -- combined position key: [34963 12677 35658 5478 60936 17345 54640 40685 50309] -- mask key: [23832 11427 59440 48739 10483 30872 4800 48753 55621 53879] +- property key: [14398 56125 29659 36184 61716 58844 42259 48679 36351 53209 63475 35295 + 1927 35139 48674 32220 3724 62784 11332 63262 61320 62990 59038 61659 + 31829 24135 49167 50519 23410 2470 22259 32544 30127 27527 18620 39840 + 105 31222 38444 37307 58991 39926 16285 42364 843 30922 30467 43324 + 13596 3432 28064 33665 35252 8733] +- passcode key: [43892 51915 3968 29221 4 52573 20838 48052 39138 14671] +- combined position key: [40967 35807 54041 52517 31281 56961 42242 11385 1018] +- mask key: [57731 56088 1801 26915 40765 22438 9693 31860 17942 7993] ### Combined Postion Key ```mermaid block-beta columns 2 - user_pos["user position key:\n[58068 33848 20979 58547 24202 53969 27574 25558 64861]"] - customer_pos["customer position key:\n[ 8625 16938 65018 7492 24125 667 1225 54737 47670]"] + user_pos["user position key:\n[24890 2120 45550 47291 61945 28551 49488 49734 20771]"] + customer_pos["customer position key:\n[29587 60364 47856 53105 61491 65374 34021 4048 33167]"] space:2 xor(("XOR")):2 user_pos --> xor customer_pos --> xor space:2 - comb_pos["combined position key\n[34963 12677 35658 5478 60936 17345 54640 40685 50309]"]:2 + comb_pos["combined position key\n[40967 35807 54041 52517 31281 56961 42242 11385 1018]"]:2 xor --> comb_pos ``` ## User Keypad - keypad: -- user passcode indices: [22, 34, 45, 43] +- user passcode indices: [12, 4, 51, 33] ## nKode Cipher @@ -52,54 +52,54 @@ block-beta ```mermaid block-beta columns 2 - cprop["customer_property_key\n[40493 16536 22567 8632 16931 48077 38465 62133 61510 60074 30483 15029 - 32328 35555 12264 4839 56666 52299 23010 54024 11530 38809 33384 9334 - 53340 25808 36388 7068 48724 2963 19292 41164 31037 24848 7109 29039 - 26458 18532 7462 19458 51071 45191 60228 22739 41943 36765 29356 35589 - 3387 28997 31698 23822 30837 4299]"] - uprop["user_property_key\n[57486 43228 16207 60359 59029 6255 7588 52492 24710 2551 40990 56898 - 56863 1051 48892 2945 40292 31660 45216 53538 40537 15451 52595 37467 - 3706 19342 38794 33132 21407 3639 12679 9190 10068 50771 64668 35246 - 60714 28831 4623 8674 56989 23715 57671 23914 51409 36438 10577 34976 - 29440 9581 47915 29410 39979 5656]"] + cprop["customer_property_key\n[12683 37623 46427 24232 53244 25444 34138 18278 52542 17394 45705 57706 + 22403 60684 20477 13672 47069 29025 8419 8211 36163 21756 45607 31517 + 44312 19522 17814 41879 18325 2622 43956 30841 59391 52171 51029 44917 + 28846 25756 24212 4239 11940 31284 58701 7692 31504 25629 20378 35504 + 45861 59860 4819 52686 62304 58952]"] + uprop["user_property_key\n[14398 56125 29659 36184 61716 58844 42259 48679 36351 53209 63475 35295 + 1927 35139 48674 32220 3724 62784 11332 63262 61320 62990 59038 61659 + 31829 24135 49167 50519 23410 2470 22259 32544 30127 27527 18620 39840 + 105 31222 38444 37307 58991 39926 16285 42364 843 30922 30467 43324 + 13596 3432 28064 33665 35252 8733]"] space:2 xor1(("XOR")):2 cprop --> xor1 uprop --> xor1 space:2 - prop["combined_property_key\n[62032 50130 36776 54558 8506 61182 6770 6684 21325 58903 51619 53457 - 24017 10096 25891 36737 43828 60364 23965 63299 43548 43762 63289 61210 - 16490 21923 14215 6365 4383 48550 62830 53206 5237 2426 49278 33751 - 21542 2104 49342 42984 62776 19754 59167 25211 60 58461 118 9841 - 52387 3482 40915 54740 30225 8961]"] + prop["combined_property_key\n[32565 54767 5127 26787 61372 9024 10051 31192 36215 25953 63643 7907 + 34275 49131 65253 35224 52025 49525 36214 22719 57589 6411 46986 50058 + 38701 701 36150 6894 36770 58151 63226 62425 5898 2177 3529 29703 + 30896 41755 9016 47283 14611 18887 54104 55155 32367 2577 31449 39233 + 18953 7162 61412 6044 61623 4668]"] xor1 --> prop - pass["user_passcode_indices\n[22, 34, 45, 43]"] + pass["user_passcode_indices\n[12, 4, 51, 33]"] space:2 sel(("select\nproperties")):2 pass --> sel prop --> sel space:2 - passcode["user passcode properties:\n[63289 49278 58461 25211]"]:2 + passcode["user passcode properties:\n[34275 61372 6044 2177]"]:2 sel --> passcode space:2 pad["zero pad to\nmax nkode length: 10"]:2 passcode -->pad space:2 - paddedpasscode["padded passcode:\n[63289 49278 58461 25211 0 0 0 0 0 0]"] + paddedpasscode["padded passcode:\n[34275 61372 6044 2177 0 0 0 0 0 0]"] pad --> paddedpasscode - passkey["passcode key:\n[21257 32848 55275 58059 52662 31196 41361 14925 10153 11854]"] + passkey["passcode key:\n[43892 51915 3968 29221 4 52573 20838 48052 39138 14671]"] space:2 xor2(("XOR")):2 passkey --> xor2 paddedpasscode --> xor2 space:2 - cipheredpass["ciphered passcode:\n[42032 16430 13238 32944 52662 31196 41361 14925 10153 11854]"]:2 + cipheredpass["ciphered passcode:\n[11927 9591 6172 31396 4 52573 20838 48052 39138 14671]"]:2 xor2 --> cipheredpass space:2 hash(("hash")):2 cipheredpass --> hash space:2 - cipheredhashed["hashed ciphered passcode:\n$2b$12$c62ezzyLW3QzUMjYUPSioexdMtSuJKzSM4KLkdKhWIiuNzcxOfT8m"]:2 + cipheredhashed["hashed ciphered passcode:\n$2b$12$Jf48A5rmjkxb0II7CkuD8.Qg3GCuROgbS99pMbthC2gXt9szx9gmm"]:2 hash --> cipheredhashed ``` @@ -107,9 +107,9 @@ block-beta ```mermaid block-beta columns 3 - passcode_idx["passcode indices:\n[22, 34, 45, 43]"] - comb_pos["combined position key:\n[34963 12677 35658 5478 60936 17345 54640 40685 50309]"] - cust_pos["customer position key:\n[ 8625 16938 65018 7492 24125 667 1225 54737 47670]"] + passcode_idx["passcode indices:\n[12, 4, 51, 33]"] + comb_pos["combined position key:\n[40967 35807 54041 52517 31281 56961 42242 11385 1018]"] + cust_pos["customer position key:\n[29587 60364 47856 53105 61491 65374 34021 4048 33167]"] 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[4, 7, 0, 7]"] + passcode_position_idx["passcode poition indices:\n[3, 4, 6, 6]"] propidx --> passcode_position_idx space:5 @@ -128,10 +128,10 @@ block-beta passcode_position_idx --> pad1 space:5 - posidx["Padded Passcode Position Indices:\n[4, 7, 0, 7, 2, 2, 0, 3, 7, 8]"] + posidx["Padded Passcode Position Indices:\n[3, 4, 6, 6, 3, 3, 7, 5, 0, 8]"] pad1 --> posidx space:1 - user_pos["user position key:\n[58068 33848 20979 58547 24202 53969 27574 25558 64861]"] + user_pos["user position key:\n[24890 2120 45550 47291 61945 28551 49488 49734 20771]"] 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[24202 25558 58068 25558 20979 20979 58068 58547 25558 64861]"] + passcode_pos["ordered user passcode positions:\n[47291 61945 49488 49488 47291 47291 49734 28551 24890 20771]"] sel --> passcode_pos - mask_key["mask key\n[23832 11427 59440 48739 10483 30872 4800 48753 55621 53879]"] + mask_key["mask key\n[57731 56088 1801 26915 40765 22438 9693 31860 17942 7993]"] space:4 xor2(("XOR")) mask_key --> xor2 passcode_pos --> xor2 space:5 - mask["enciphered mask:\n [ 914 20341 2788 56757 30976 10603 61460 23234 47763 12074]"] + mask["enciphered mask:\n [22840 10977 50777 43123 10118 61213 59291 5107 10028 19994]"] xor2 --> mask ``` @@ -156,19 +156,19 @@ block-beta ```mermaid block-beta columns 3 - selected_keys["selected keys:\n[5, 3, 2, 2]"] - login_keypad["login keypad:\nKey 0: [18 19 11 30 40 41 24 52 26] -Key 1: [36 1 47 12 49 32 42 25 35] -Key 2: [45 46 29 39 13 50 33 43 17] -Key 3: [27 37 2 3 31 5 6 34 8] -Key 4: [ 9 10 20 21 4 23 15 7 53] -Key 5: [ 0 28 38 48 22 14 51 16 44] + selected_keys["selected keys:\n[1, 0, 5, 0]"] + login_keypad["login keypad:\nKey 0: [45 46 29 48 4 50 33 16 17] +Key 1: [18 1 20 12 49 5 15 34 44] +Key 2: [27 10 38 3 31 14 24 7 26] +Key 3: [ 0 37 11 39 22 23 42 52 8] +Key 4: [36 19 2 21 40 32 6 25 35] +Key 5: [ 9 28 47 30 13 41 51 43 53] "] space:4 selectkeys(("select keys")) - mask["enciphered mask:\n [ 914 20341 2788 56757 30976 10603 61460 23234 47763 12074]"] - mask_key["mask key:\n[23832 11427 59440 48739 10483 30872 4800 48753 55621 53879]"] + mask["enciphered mask:\n [22840 10977 50777 43123 10118 61213 59291 5107 10028 19994]"] + mask_key["mask key:\n[57731 56088 1801 26915 40765 22438 9693 31860 17942 7993]"] space:2 xor1(("XOR")) @@ -178,12 +178,12 @@ Key 5: [ 0 28 38 48 22 14 51 16 44] login_keypad --> selectkeys space:3 - ordered_keys["ordered keys:\n[[ 0 28 38 48 22 14 51 16 44] - [27 37 2 3 31 5 6 34 8] - [45 46 29 39 13 50 33 43 17] - [45 46 29 39 13 50 33 43 17]]"] - user_position_key["user position key:\n[58068 33848 20979 58547 24202 53969 27574 25558 64861]"] - passcode_pos["ordered user passcode positions:\n[24202 25558 58068 25558 20979 20979 58068 58547 25558 64861]"] + ordered_keys["ordered keys:\n[[18 1 20 12 49 5 15 34 44] + [45 46 29 48 4 50 33 16 17] + [ 9 28 47 30 13 41 51 43 53] + [45 46 29 48 4 50 33 16 17]]"] + user_position_key["user position key:\n[24890 2120 45550 47291 61945 28551 49488 49734 20771]"] + passcode_pos["ordered user passcode positions:\n[47291 61945 49488 49488 47291 47291 49734 28551 24890 20771]"] selectkeys --> ordered_keys xor1 --> passcode_pos space:8 @@ -193,7 +193,7 @@ Key 5: [ 0 28 38 48 22 14 51 16 44] passcode_pos --> get_passcode_idxs space:8 - passcode_pos_idxs["padded passcode position indices:\n[4, 7, 0, 7, 2, 2, 0, 3, 7, 8]"] + passcode_pos_idxs["padded passcode position indices:\n[3, 4, 6, 6, 3, 3, 7, 5, 0, 8]"] get_passcode_idxs --> passcode_pos_idxs space:3 @@ -202,13 +202,13 @@ Key 5: [ 0 28 38 48 22 14 51 16 44] passcode_pos_idxs --> get_presumed_idxs space:5 - passcode_prop_idxs["presumed passcode property indices:\n[22, 34, 45, 43]"] - prop["combined_property_key\n[62032 50130 36776 54558 8506 61182 6770 6684 21325 58903 51619 53457 - 24017 10096 25891 36737 43828 60364 23965 63299 43548 43762 63289 61210 - 16490 21923 14215 6365 4383 48550 62830 53206 5237 2426 49278 33751 - 21542 2104 49342 42984 62776 19754 59167 25211 60 58461 118 9841 - 52387 3482 40915 54740 30225 8961]"] - cipheredhashed["hashed ciphered passcode:\n$2b$12$c62ezzyLW3QzUMjYUPSioexdMtSuJKzSM4KLkdKhWIiuNzcxOfT8m"] + passcode_prop_idxs["presumed passcode property indices:\n[12, 4, 51, 33]"] + prop["combined_property_key\n[32565 54767 5127 26787 61372 9024 10051 31192 36215 25953 63643 7907 + 34275 49131 65253 35224 52025 49525 36214 22719 57589 6411 46986 50058 + 38701 701 36150 6894 36770 58151 63226 62425 5898 2177 3529 29703 + 30896 41755 9016 47283 14611 18887 54104 55155 32367 2577 31449 39233 + 18953 7162 61412 6044 61623 4668]"] + cipheredhashed["hashed ciphered passcode:\n$2b$12$Jf48A5rmjkxb0II7CkuD8.Qg3GCuROgbS99pMbthC2gXt9szx9gmm"] get_presumed_idxs --> passcode_prop_idxs space:3 @@ -217,7 +217,7 @@ Key 5: [ 0 28 38 48 22 14 51 16 44] prop --> sel space:5 - passcode_prop["presumed passcode properties:\n[63289 49278 58461 25211]"] + passcode_prop["presumed passcode properties:\n[34275 61372 6044 2177]"] sel --> passcode_prop space:5 @@ -225,7 +225,7 @@ Key 5: [ 0 28 38 48 22 14 51 16 44] passcode_prop --> cipher space:5 - cipheredpass["ciphered passcode:\n[42032 16430 13238 32944 52662 31196 41361 14925 10153 11854]"] + cipheredpass["ciphered passcode:\n[11927 9591 6172 31396 4 52573 20838 48052 39138 14671]"] cipher --> cipheredpass space:7 @@ -242,34 +242,34 @@ Key 5: [ 0 28 38 48 22 14 51 16 44] ### Renew nKode nKode renewal is a three step process: -1. Renew Customer Properties -2. Renew User Keys -3. Refresh User on Login +1. Renew Customer Keys +2. Intermediate User Keys +3. Renew User Keys on Login ```mermaid flowchart - subgraph Renew Customer Properties - old_prop["`old customer property key:
[ 4830 27406 45287 16089 51119 63121 2006 55056 13259 61408 27069 3731 - 33742 9067 56287 33792 13904 36960 60733 9825 13381 38569 14922 32065 - 19984 7725 40973 39345 17024 45969 50409 60464 13089 53033 15586 2681 - 47372 30887 53937 34314 11173 4489 1624 16145 51437 27147 10535 44753 - 49059 10487 9464 42806 59962 13593]`"] - new_prop["`new customer property key:
[40493 16536 22567 8632 16931 48077 38465 62133 61510 60074 30483 15029 - 32328 35555 12264 4839 56666 52299 23010 54024 11530 38809 33384 9334 - 53340 25808 36388 7068 48724 2963 19292 41164 31037 24848 7109 29039 - 26458 18532 7462 19458 51071 45191 60228 22739 41943 36765 29356 35589 - 3387 28997 31698 23822 30837 4299]`"] - old_pos["`old customer position key:
[27207 46525 55993 61909 45186 37136 48838 64827 14808]`"] - new_pos["`new customer position key:
[ 8625 16938 65018 7492 24125 667 1225 54737 47670]`"] + subgraph Renew Customer Keys + old_prop["`old customer property key:
[18187 3794 26588 58875 7848 50844 33360 51199 136 43704 3944 38716 + 33380 13992 16583 62532 50613 13365 41266 44961 3965 61189 20756 13137 + 60280 23802 19769 57273 54480 60033 40969 36089 25253 25350 17781 61351 + 30937 56045 46356 10504 57212 53809 60613 29199 32036 29403 3546 12413 + 32533 5778 33348 37917 30979 12321]`"] + new_prop["`new customer property key:
[12683 37623 46427 24232 53244 25444 34138 18278 52542 17394 45705 57706 + 22403 60684 20477 13672 47069 29025 8419 8211 36163 21756 45607 31517 + 44312 19522 17814 41879 18325 2622 43956 30841 59391 52171 51029 44917 + 28846 25756 24212 4239 11940 31284 58701 7692 31504 25629 20378 35504 + 45861 59860 4819 52686 62304 58952]`"] + old_pos["`old customer position key:
[49469 33687 25335 30110 35784 45318 25682 60991 21209]`"] + new_pos["`new customer position key:
[29587 60364 47856 53105 61491 65374 34021 4048 33167]`"] xor1(("XOR")) xor2(("XOR")) - xor_prop["`xor property key:
[36083 11158 59584 8033 34188 19804 37271 9637 50061 1354 7854 13350 - 64902 43400 62519 38631 60170 23595 46303 62825 6479 304 47138 22839 - 40524 31485 11817 33325 64724 47106 36789 19708 18972 44601 10023 31510 - 56918 12483 53143 51720 60634 41230 60700 26562 27450 58774 23435 9684 - 45720 22962 24362 64056 37455 9682]`"] - xor_pos["`xor position key:
[19446 63383 10051 60561 61119 37771 47631 10474 33774]`"] + xor_prop["`xor property key:
[30336 39973 53895 47955 53588 42488 1802 32921 52662 59722 48609 30294 + 54759 56228 3898 49452 29288 17748 33233 36786 33342 48121 58163 18508 + 18016 4280 2223 31790 37701 57535 3005 62592 34138 43213 33312 16594 + 2167 48753 60288 14727 61912 43013 2440 27651 1588 5830 16960 47821 + 52272 65350 37015 22995 35427 54889]`"] + xor_pos["`xor position key:
[45742 26715 55303 47855 31739 20056 57527 57839 54102]`"] old_prop --> xor1 new_prop --> xor1 xor1 --> xor_prop @@ -278,17 +278,17 @@ nKode renewal is a three step process: xor2 --> xor_pos end - subgraph Renew User Keys + subgraph Intermediate User Keys users@{shape: procs, label: "users"} users --> eachuser subgraph eachuser [for each user] subgraph old user keys - old_user_pos["`combined position key:
[58068 33848 20979 58547 24202 53969 27574 25558 64861]`"] - old_user_prop["`property key:
[57486 43228 16207 60359 59029 6255 7588 52492 24710 2551 40990 56898 - 56863 1051 48892 2945 40292 31660 45216 53538 40537 15451 52595 37467 - 3706 19342 38794 33132 21407 3639 12679 9190 10068 50771 64668 35246 - 60714 28831 4623 8674 56989 23715 57671 23914 51409 36438 10577 34976 - 29440 9581 47915 29410 39979 5656]`"] + old_user_pos["`combined position key:
[24890 2120 45550 47291 61945 28551 49488 49734 20771]`"] + old_user_prop["`property key:
[14398 56125 29659 36184 61716 58844 42259 48679 36351 53209 63475 35295 + 1927 35139 48674 32220 3724 62784 11332 63262 61320 62990 59038 61659 + 31829 24135 49167 50519 23410 2470 22259 32544 30127 27527 18620 39840 + 105 31222 38444 37307 58991 39926 16285 42364 843 30922 30467 43324 + 13596 3432 28064 33665 35252 8733]`"] old_renew["renew: False"] end xor3(("XOR")) @@ -300,28 +300,28 @@ 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:
[50021 50706 44041 63991 183 53322 28543 46599 18283]`"] - inter_user_prop["`property key:
[27773 33610 55183 62630 25369 21811 35891 59561 41739 3261 48816 60004 - 9113 44435 19147 40294 30318 10119 1151 9291 34582 15723 30033 52076 - 36918 12659 47523 833 44875 46645 48690 28442 27976 26730 56251 62136 - 13180 16476 56728 60394 12871 64941 3163 15016 41963 27584 29402 44404 - 49560 31967 58369 35034 3684 13258]`"] + inter_user_pos["`combined position key:
[ 4777 58244 2846 30666 458 37081 17845 52630 53420]`"] + inter_user_prop["`property key:
[20158 18200 41308 13835 8256 16420 41497 16062 16457 9875 18962 65417 + 53856 21223 45336 48368 31972 45076 44437 30892 28086 19959 1453 47255 + 14901 20223 51360 47481 51255 59673 23886 35744 61685 49994 51868 56178 + 2078 51079 32172 43068 6071 13299 13845 51583 1407 28172 13635 5105 + 63788 61998 64823 55890 983 62580]`"] inter_renew["renew: True"] end end end - subgraph Refresh User on Login + subgraph Renew User Keys on Login login["First login post renew"] inter_user --> login subgraph new_user [New User Keys] - new_user_pos["`combined position key:
[41920 44706 35397 43292 52009 11204 43818 26002 28955]`"] - new_user_prop["`property key:
[50355 56723 59762 39268 44255 59491 12736 62545 3731 51049 48946 10598 - 23999 55461 35771 20498 38352 13185 17075 30409 22199 3533 32360 12423 - 10680 48407 6174 11559 44174 8103 37520 52514 30628 49367 7063 8839 - 30149 1724 51332 64105 26257 48370 17405 42481 4953 43432 15038 37511 - 62432 22826 16312 39525 13907 33285]`"] + new_user_pos["`combined position key:
[37567 32382 36425 6535 11819 18071 35301 38878 29144]`"] + new_user_prop["`property key:
[63204 21530 24393 63295 52024 46102 24361 23381 41968 3713 26133 17989 + 14193 46059 12280 45683 35436 9340 17577 37219 15797 39388 52148 29719 + 48300 18038 25938 62757 21612 28454 23892 12945 18057 62761 37107 25062 + 27001 30212 20943 35287 60202 25046 29690 64376 57055 1554 42998 36674 + 45138 58609 25837 59944 8395 52185]`"] new_renew["renew: False"] end login --> new_user diff --git a/docs/templates/encipher_decipher_renew_nkode.template.md b/docs/templates/encipher_decipher_renew_nkode.template.md index bfaa360..61ac96c 100644 --- a/docs/templates/encipher_decipher_renew_nkode.template.md +++ b/docs/templates/encipher_decipher_renew_nkode.template.md @@ -209,15 +209,15 @@ block-beta ### Renew nKode nKode renewal is a three step process: -1. Renew Customer Properties -2. Renew User Keys -3. Refresh User on Login +1. Renew Customer Keys +2. Intermediate User Keys +3. Renew User Keys on Login {% set md_tick = '`' %} ```mermaid flowchart - subgraph Renew Customer Properties + subgraph Renew Customer Keys old_prop["`old customer property key:
{{old_props}}`"] new_prop["`new customer property key:
{{new_props}}`"] old_pos["`old customer position key:
{{old_pos}}`"] @@ -234,7 +234,7 @@ nKode renewal is a three step process: xor2 --> xor_pos end - subgraph Renew User Keys + subgraph Intermediate User Keys users@{shape: procs, label: "users"} users --> eachuser subgraph eachuser [for each user] @@ -260,7 +260,7 @@ nKode renewal is a three step process: end - subgraph Refresh User on Login + subgraph Renew User Keys on Login login["First login post renew"] inter_user --> login subgraph new_user [New User Keys] diff --git a/notebooks/Enrollment_Login_Renewal_Detailed.ipynb b/notebooks/Enrollment_Login_Renewal_Detailed.ipynb index c549e71..78811da 100644 --- a/notebooks/Enrollment_Login_Renewal_Detailed.ipynb +++ b/notebooks/Enrollment_Login_Renewal_Detailed.ipynb @@ -762,9 +762,9 @@ "cell_type": "markdown", "source": [ "## Renew Properties\n", - "1. Renew Customer Properties\n", - "2. Renew User Keys\n", - "3. Refresh User on Login\n", + "1. Renew Customer Keys\n", + "2. Intermediate User Keys\n", + "3. Renew User Keys on Login\n", "\n" ] }, @@ -839,7 +839,7 @@ "metadata": {}, "cell_type": "markdown", "source": [ - "### Renew User\n", + "### Intermediate Renew User\n", "User property and position keys go through an intermediate phase.\n", "#### user.cipher.combined_position_key\n", "- user_combined_position_key = user_combined_position_key XOR pos_xor\n", @@ -873,7 +873,7 @@ "metadata": {}, "cell_type": "markdown", "source": [ - "### Refresh User Keys\n", + "### New User Keys\n", "After a user's first successful login, the renew flag is checked. If it's true, the user's cipher is replaced with a new cipher." ] },