Ответы пользователя по тегу Шифрование
  • Есть ли легкий мессенджер, только для двоих человек, с шифрованием E2E?

    mayton2019
    @mayton2019
    Bigdata Engineer
    В рамках шутки. Купите себе КВ-трансивер. Вряд-ли кто-то в наше время следит за аналоговой связью которая как Неуловимый Джо никому не нужна.

    Ну а если серъезно - то - этот вопрос решал еще лет 20 назад один еврейский дядечка. Филипп Циммерман. Он написал опенсорцный продукт PGP (Pretty Good Privacy) и в виде книги сорцами опубликовал его для использования. Включил туда набор шифров с военным уровнем разрядности (там кажется до 4096 бит ключи) и сделал реализацию в виде консольных утилит. Предполагается что вы будете слать емейлы шифрованные этой утилитой. Или через любой канал который текстовый кидать шифрованные мессаги.
    Ответ написан
    Комментировать
  • Как в RC6 вводятся текст и ключ?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Схема при которой пользователь вводит НЕЧТО с клавиатуры и это нечто расматривается как ключ шифрования - очень слабая схема и не выдерживает атак. Пользоватль ленив и глуп. И всегда будет стараться вводить пароли и ключи по 1-2 символа. С этим ничего не поделать. Поэтому если автор заинтересован чтобы поле ключей было более сложным - надо использовать во первых SALT в совокупности с паролем. И использовать функцию хеширования наподобие SHA1 чтобы получить более-менее сложый ключ. В некоторых случаях (сеансовые ключи) можно получить энтропию из внешнего мира (часы в микросекундах и текущее положение мышки на экрасне).

    Тоесть само наличие в схеме алгоритма RC5 еще не гарантирует что у тебя система надежна. Нужно чтобы ее использование было чистым и лишенным человеческого фактора.
    Ответ написан
  • Программа для шифровки сообщений не работает. Почему?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Лови первую помидорку!

    Нет смысла делать операции XOR над char типом данных.
    newMassage[x] = (char)(newMassage[x] ^ dayKey);
    В криптографии если ты решил серъезно играть - то надо весь открытый текст перевести в byte array
    (здесь как раз появляется понятие кодовая страница) и потом применить XOR к этому байтовому массиву.
    Для печати на экране байт-масив переводят либо в binhex, либо в base64.

    Для дешифрования - соотв. надо сделать обратный цикл. Из binhex в байтовый массив. Потом из него XOR и потом - национальная кодовая страница.
    Ответ написан
    1 комментарий