Для того, щоб зрозуміти, що таке безпека криптовалют, потрібно заглянути на пару тисяч років назад. Криптографія має дуже довгу історію від заміни букв і до системи шифрування з відкритим ключем і хешируванням.
Історія
Перші згадки криптографії можна знайти в Давньому Єгипті 4000 років тому, коли використовували моноалфавітну систему шифрування – основний принцип полягає в заміні букв алфавіту початкового тексту літерами іншого алфавіту. Це перший період розвитку. Другий період починається з розвитком поліалфавітного шифрування – періодичне використання в тексті кількох моноалфавітних шифрів до певного числа букв шифрованого тексту. Починаючи з IX століття на Близькому Сході (Ал-Кінді) і з XV століття в Європі (Леон Баттіста Альберті) – до початку XX століття).
Наприклад: [Привіт]; [Як справи?]; [Я працюю], …, [Передзвоню], …, …, [Ти ETH купив] ?. Перший моноалфавітний шифр буде кодувати [Привіт], другий моноалфавітний шифр – [Як справи], третій – [Я працюю] і далі в такому дусі. Це поліалфавітних шифр.
Третій період (1900 – 1950-х) примітний тим, що тут починають впроваджуються електромеханічні пристрої в роботу шифрувальників в купі з моноалфавітним шифруванням.
Найвідомішим прикладом застосування електромеханічного пристрою і поліалфавітних шифрування є німецька кодувальна машина – ENIGMA, яка могла посприяти своїм існуванням багатьом смертям у другій світовій війні. На щастя, напередодні війни Алан Тюринг разом з іншими вченими і уповноваженими органами Англії змогли створити дешифровальну машину, яку назвали Turing BOMB.
Четвертий період (1950 – 1975-х) криптографія стає більш математичною, зі строгими правилами кількості інформації, передачі даних, ентропії, функцій шифрування. Обов’язковим етапом створення шифру вважається вивчення його вразливості до різних відомих атак – лінійному і диференціальному криптоаналізу. До 1975 року криптографія все ще залишалася з приватним ключем.
П’ятий період починається з 1975 року і триває до цього дня. Саме цей період можна назвати сучасною криптографією.
Сьогодні
Новий напрям, який починає активно розвиватися – криптографія з відкритим ключем. Нові технічні можливості, а також поширення криптографії у використання приватними особами вимагає розвитку.
Асиметричне шифрування
Передбачає використовувати в парі два різних ключі – публічний (відкритий) і приватний (секретний). У асиметричному шифруванні ключі працюють в парі – якщо дані шифруються відкритим ключем, то розшифрувати їх можна тільки відповідним секретним ключем і навпаки – якщо дані шифруються секретним ключем, то розшифрувати їх можна тільки відповідним відкритим ключем. Використовувати відкритий ключ з однієї пари і секретний з іншого неможливо. Кожна пара асиметричних ключів пов’язана математичними залежностями. Даний спосіб також націлений на перетворення інформації від перегляду третьою стороною.
Тепер можна приступити до того, як це працює в блокчейні біткоіну.
Біткоін адреса
– це хеш (код) публічного ключа (PUB). Сам публічний ключ – це хеш від приватного ключа (PRIV).
Публічний ключ зашифрований в SHA256 це і є адреса гаманця. Адреса = SHA256 (PUB), і виходить щось на зразок цього: 1thFdfkjoJgz3N6sLoAwGth9TNm8YuOPgT7 (це спрощений процес, насправді все складніше).
Це адреса, яку потрібно запам’ятати для здійснення переказу іншій особі (людина – одержувач коштів, повинен вам його скинути). Сенс адреси можна уявити собі, як точне місцезнаходження біткоіни в блокчейні. Але в блокчейні не міститься твій секретний і публічний ключі, в мережі немає інформація про них, вони є тільки у тебе і їх потрібно тримати в секреті. Передача біткоін-адреси іншій людині – абсолютно безпечна, оскільки властивості хешу такі, що неможливо з адреси отримати публічний ключ: Pub=261c1eb21fc47456467be1cfc6d4565652e9e768b620782898936b93000 a6c02
І тим більше приватний: Priv=04678afdb0fe5548271967f1a67130b546hj5k8e 03909a67962e0ea1f61deb649f6bc3f4cef38c4f35504e51ec112de5c384df7 ba0b8d578a4c702b6bf11d5f
На твоєму комп’ютері створюється публічний і приватний ключ. Приватний ключ вважається абсолютно секретним, тому що з його допомогою можна розшифрувати те, що зашифровано публічним. У той же час, якщо ти розкажеш про публічним ключі, то з його допомогою зможуть зашифрувати будь-яке повідомлення так, що прочитати його зможеш тільки ти, так як володієш приватним ключем. Але крім цього, у публічного ключа є корисний ефект – за допомогою нього можна перевірити, що дані були зашифровані саме твоїм приватним ключем, що не розшифровуючи при цьому самі дані.
Також в криптовалюта для забезпечення безпеки транзакцій використовується:
Хешування
Хешування – це процес при якому відбувається перетворення інформації будь-якої довжини у вихідну бітову рядок певної довжини. Такі перетворення також називаються хеш-функціями або функціями згортки, а їх результати називають хеш-кодом, контрольною сумою або дайджестом повідомлення (англ. Message digest). Результати хешировання статистично унікальні. Послідовність, що відрізняється хоча б одним байтом, що не буде перетворена в те ж саме значення.
Простіше кажучи, інформація, яку ви збираєтеся закодувати при хешуванні, в незалежності від розміру, перетворюється в бітову рядок фіксованої довжини.