[О блоге]
[наверх]
[пред]
[2017-10-11 22:37:54+03:00]
[22eb44c231ae1b1fda9c9799f2b5e75cda60b8d2]
Темы: [bsd][go]
Написал GEOM Gate демона на Go
https://www.freebsd.org/doc/handbook/geom-ggate.html
У меня была давно хотелка написать свою реализацию полнодискового
шифрования. Не то чтобы текущий GELI или LUKS не устраивал бы, но если
можно с достаточной надёжностью написать своё, то почему бы и нет. Плюс
иметь возможно делать deniable encryption -- например хранить данные
так, что нельзя доказать их наличие. Например по запросу суда/полиции
заставляют отдать ключ дешифрования диска -- отдаём, но также возможно
будут иметься ещё какие-то скрытые данные, факт наличия которых не
доказать.
Идея hidden volume-ов не нова и давно есть в TrueCrypt. Я же пока думаю
делать полнодисковое шифрование не совсем классическими XTS, CBC,
whatever, но добавлять к ним вектор инициализации и именно в нём
возможно хранить дополнительный hidden volume. Если IV будет на самом
деле шифротекстом, то для стороннего наблюдателя он всё-равно не отличим
от шума и выглядит как просто IV, рандомный, как и должен бы быть.
Но это всё откладывал потому-что хочется писать на Go, но чтобы никакого
C. Поэтому применять только сетевую подсистему эмулирующую доступ к
блочным устройствам. Я знал про iSCSI, AoE, NBD. AoE -- сложно и
геморройно и мало где используется. NBD нет под *BSD. iSCSI -- мне
кажется я не осилил прочитать даже всякий introduction в его RFC: с нуля
писать iSCSI target это колоссальное количество работы.
Но вот на днях случайно увидел GEOM Gate -- УБЕР простой протокол
доступа по сети к блочному устройству. Вчера за вечер полностью его
реализовал. Теперь остаётся только криптографическая часть,
[оставить комментарий]