Advertisement
glavmonter

ECC

Jul 9th, 2018
170
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.04 KB | None | 0 0
  1. Идея такая. Сделать отладочную версию обмена ключами и закрытыми и открытыми
  2.  
  3. Со стороны платы будет происходить следующее:
  4. 1) Событие OnConnect - подключение
  5. 2) Генерирование ключей: ECC, curves secp256r1 or secp256k1.
  6. 3) Передача открытого ключа
  7. 4) Прием открытого ключа от Андроида
  8. 5) Генерирование общего ключа
  9. /************Отладка*******************/
  10. 6) Передача закрытого ключа
  11. 7) Передача общего ключа
  12. 8) Прием закрытого ключа от Андроида
  13. 9) Прием общего ключа от Андроида
  14.  
  15. Это делаем для выбора режима работы библиотеки micro-ecc на плате, little-big endian и прочие defines.
  16.  
  17. Размеры ключей: Открытый - 512 бит, закрытый и общий - 256 бит.
  18.  
  19.  
  20.  
  21. Для тестов буду использовать ниже приведенные ключи (для nRF52 - Key 1).
  22. На Андроиде - лучше создавать или ниже приведенные брать (Key 2).
  23.  
  24. Ключи сгенерированы на кривой secp256r1
  25.  
  26. Public Key 1:
  27. 0x88, 0x3F, 0x1E, 0x3A, 0x7B, 0x9A, 0x6B, 0x1C,
  28. 0xB8, 0x64, 0x58, 0xDE, 0x86, 0xC6, 0xCC, 0x66,
  29. 0x4F, 0x47, 0x35, 0x16, 0xE4, 0x65, 0x4B, 0xF0,
  30. 0x9F, 0xE0, 0x25, 0x23, 0x06, 0xBC, 0xCA, 0x3A,
  31. 0x8F, 0xF7, 0x30, 0x2E, 0x8A, 0x4C, 0xA1, 0x6A,
  32. 0xF3, 0x19, 0x16, 0x35, 0xB9, 0x0B, 0xB3, 0x91,
  33. 0xEB, 0x0D, 0xCD, 0xC7, 0xA4, 0xB4, 0xBD, 0x38,
  34. 0x90, 0x6A, 0x2A, 0x49, 0xE1, 0x32, 0x8C, 0x9E,
  35.  
  36.  
  37. Private Key 1:
  38. 0xB1, 0x34, 0xF6, 0xEB, 0xA1, 0x9A, 0xCB, 0xA8,
  39. 0xCA, 0x33, 0xCF, 0xAA, 0x0A, 0xBE, 0x0D, 0xE0,
  40. 0xED, 0x3D, 0xD6, 0xE8, 0xDE, 0x38, 0xC3, 0xF8,
  41. 0x0B, 0xE9, 0x39, 0xA0, 0x7F, 0x55, 0x55, 0xD3,
  42.  
  43.  
  44. Public Key 2:
  45. 0xA5, 0x09, 0x05, 0xAA, 0x07, 0xBC, 0x73, 0x78,
  46. 0x0A, 0x98, 0x7E, 0xFC, 0x97, 0x16, 0xA8, 0x7E,
  47. 0x64, 0x77, 0xA4, 0x82, 0x58, 0x98, 0x7A, 0xA3,
  48. 0xA1, 0x2D, 0xBB, 0xF5, 0xBB, 0x4C, 0xC5, 0xFC,
  49. 0x8F, 0x5E, 0xF8, 0xB4, 0x48, 0xBA, 0xC2, 0xB1,
  50. 0xF8, 0x0C, 0x01, 0x00, 0x31, 0x3D, 0xE6, 0xF3,
  51. 0xFC, 0xB4, 0xC0, 0x82, 0x77, 0x76, 0x7B, 0xE5,
  52. 0x22, 0xBD, 0x8B, 0xAF, 0x2A, 0xC3, 0x53, 0x8E,
  53.  
  54.  
  55. Private Key 2:
  56. 0xFC, 0xF4, 0x30, 0xE0, 0x10, 0x52, 0x1F, 0x1D,
  57. 0x02, 0x69, 0xDB, 0x78, 0xAE, 0x15, 0x3F, 0xF5,
  58. 0x38, 0xE6, 0xBD, 0x63, 0x4A, 0x9A, 0x02, 0x33,
  59. 0x48, 0xEB, 0xC3, 0xA2, 0x9E, 0x70, 0xDA, 0x41,
  60.  
  61.  
  62. Shared Secret 1:
  63. 0x7A, 0xED, 0xA2, 0x1E, 0x28, 0x31, 0xD8, 0xC9,
  64. 0x4C, 0xA8, 0x68, 0x76, 0x74, 0xC6, 0x85, 0xB4,
  65. 0xEC, 0xD8, 0x03, 0x77, 0x0C, 0x70, 0x6E, 0xE7,
  66. 0x14, 0xE4, 0x51, 0x7A, 0xE4, 0x6D, 0x08, 0x2D,
  67.  
  68.  
  69. Shared Secret 2:
  70. 0x7A, 0xED, 0xA2, 0x1E, 0x28, 0x31, 0xD8, 0xC9,
  71. 0x4C, 0xA8, 0x68, 0x76, 0x74, 0xC6, 0x85, 0xB4,
  72. 0xEC, 0xD8, 0x03, 0x77, 0x0C, 0x70, 0x6E, 0xE7,
  73. 0x14, 0xE4, 0x51, 0x7A, 0xE4, 0x6D, 0x08, 0x2D,
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement