cryptography- все статьи тега


.NET-реализация (библиотеки) криптографии эллиптических кривых

Пожалуйста, можете ли вы предложить какую-либо реализацию криптографии эллиптических кривых для использования на платформе .NET? Также, если вы использовали их, можете ли вы сказать мне рекомендуемые кривые, которые следует использовать? [EDIT] Как упоминалось в @FatCat, его реализация доступна в .NET framework 3.5, но доступна только в windows vista. Не могли бы вы предложить другой способ/библиотеку, чтобы использовать его? ...

Реализация hmac-sha1 на java в соответствии с rfc2202

Я ищу решение, чтобы сделать реализацию hmac-sha1 в java, которая даст мне тот же результат, как это описано в документе rfc2202. https://tools.ietf.org/html/rfc2202.html (3. Тестовые случаи для HMAC-SHA-1) Я попытался написать какой-то код, но я был далек от решения. Наконец я нашел функцию здесь: https://stackoverflow.com/a/8396600 и это сработало для меня в тестовом случае 2 для rfc2202, где key= "Jefe" и data= " what do ya want for nothing?- Мне нужно больше, чтобы ... есть входные данн ...

Как использовать bcrypt для хэширования паролей в PHP?

время от времени я слышу совет "использовать bcrypt для хранения паролей в PHP, правила bcrypt". но что такое bcrypt? PHP не предлагает никаких таких функций, Википедия лепечет о утилите шифрования файлов, а веб-поиск просто показывает несколько реализаций Blowfish на разных языках. Теперь Blowfish также доступен в PHP через mcrypt, но как это поможет с хранением паролей? Blowfish-это шифр общего назначения, он работает двумя способами. Если это может быть зашифрован, его можно расшифровать. Па ...

Java 256-битное шифрование на основе пароля AES

мне нужно реализовать 256-битное шифрование AES, но все примеры, которые я нашел в интернете, используют "KeyGenerator" для создания 256-битного ключа, но я хотел бы использовать свой собственный ключ доступа. Как я могу создать свой собственный ключ? Я попытался заполнить его до 256 бит, но затем я получаю сообщение об ошибке, говоря, что ключ слишком длинный. У меня есть патч неограниченной юрисдикции установлен, так что это не проблема:) Ie. Кейгенератор выглядит так ... // Get the KeyGene ...

Как создаются лицензионные ключи программного обеспечения?

лицензионные ключи являются стандартом defacto в качестве антипиратской меры. Честно говоря, это поражает меня как (in)безопасность через неизвестность, хотя я действительно не знаю, как генерируются лицензионные ключи. Что такое хороший (безопасный) пример генерации лицензионного ключа? Какой криптографический примитив (если таковой имеется) они используют? Это дайджест сообщения? Если да, то какие данные они будут хэшировать? Какие методы используют разработчики, чтобы сделать его трудным для ...

Где вы храните свои солевые струны?

Я всегда использовал правильную строку соли для каждой записи при хэшировании паролей для хранения базы данных. Для моих нужд хранение соли в БД рядом с хэшированным паролем всегда работало нормально. однако некоторые люди рекомендуют хранить соль отдельно от базы данных. Их аргумент заключается в том, что если база данных скомпрометирована, злоумышленник все равно может построить радужную таблицу с учетом конкретной строки соли, чтобы взломать одну учетную запись за раз. Если это учетная запи ...

Возможно ли расшифровать хэши MD5?

кто-то сказал мне, что он видел программными системами: извлечение зашифрованных паролей MD5 из других систем; расшифровать зашифрованные пароли и хранить пароли в базе данных системы, используя собственный алгоритм системы. Это возможно? Я думал, что невозможно / возможно расшифровать хэши MD5. Я знаю, что есть словари MD5, но есть ли фактическая расшифровка алгоритм? ...

Разница между Java.утиль.Случайные и java.безопасность.SecureRandom

моей команде передали некоторый код на стороне сервера( на Java), который генерирует случайные токены, и у меня есть вопрос относительно того же - цель этих токенов довольно чувствительна-используется для идентификатора сеанса, ссылок сброса пароля и т. д. Таким образом, они должны быть криптографически случайными, чтобы избежать того, чтобы кто-то их угадал или грубо принудил их к этому. Маркер является "длинным", поэтому он имеет длину 64 бита. код в настоящее время используется java.util.Ra ...

Почему простые числа важны в криптографии?

одна вещь, которая всегда поражает меня как non-шифровальщиком: почему так важно использовать простые числа? Что делает их такими особенными в криптографии? кто-нибудь простой короткое объяснение? (Я знаю, что есть много праймеров и что Прикладная криптография-это Библия, но, как сказано: я не собираюсь реализовывать свой собственный криптографический алгоритм, и материал, который я нашел, просто заставил мой мозг взорваться - нет 10 страниц математических формул, пожалуйста :)) спасибо для вс ...

Почему SSL-подтверждения дать не могут генерировать исключения ключей Диффи'?

когда я устанавливаю SSL-соединение с некоторыми IRC-серверами (но не с другими - предположительно из-за предпочтительного метода шифрования сервера), я получаю следующее исключение: Caused by: java.lang.RuntimeException: Could not generate DH keypair at com.sun.net.ssl.internal.ssl.DHCrypt.<init>(DHCrypt.java:106) at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverKeyExchange(ClientHandshaker.java:556) at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(Client ...

Шифровать пароль в конфигурационных файлах? [закрытый]

У меня есть программа, которая считывает информацию о сервере из файла конфигурации и хотела бы зашифровать пароль в этой конфигурации, который может быть прочитан моей программой и расшифрован. требования: зашифровать пароль открытого текста, который будет храниться в файле расшифровать зашифрованный пароль, считанный из файла из моей программы любые рекомендации о том, как я буду это делать? Я думал написать свой собственный но я чувствую, что это было бы ужасно небезопасно. ...

Как шифровать / расшифровывать данные в php?

Я в настоящее время студент, и я изучаю PHP, я пытаюсь сделать простой шифровать/расшифровывать данные в PHP. Я сделал некоторые онлайн-исследования, и некоторые из них были довольно запутанными(по крайней мере для меня). вот что я пытаюсь сделать: у меня есть таблица, состоящая из этих полей (UserID, Fname, Lname, Email, Пароль) Я хочу, чтобы все поля были зашифрованы, а затем расшифрованы(можно ли использовать sha256 для шифрование / расшифровка, если нет алгоритма шифрования) еще одна вещ ...

Какую длину ключа RSA следует использовать для моих SSL-сертификатов?

Я в процессе создания CSR, и мне интересно, какая, возможно, лучшая длина для моего ключа RSA. конечно, 384, вероятно, слишком слаб, и 16384, вероятно, слишком медленно. существует ли консенсус по длине ключа, который следует использовать, в зависимости от срока службы сертификата? изменить : Как и большинство людей, я хочу, чтобы мой ключ был достаточно сильным. Я не беспокоюсь, что АНБ может сломать мой ключ в 2019 году. Я просто хочу знать какая лучшая практика, когда один планирует сдела ...

Могут ли две разные строки генерировать один и тот же хэш-код MD5?

для каждого из наших бинарных активов мы генерируем хэш MD5. Это используется, чтобы проверить, является ли определенный бинарный актив уже в нашем приложении. Но возможно ли, что два разных бинарных актива генерируют один и тот же хэш MD5. Так возможно ли, что две разные строки генерируют один и тот же хэш MD5? ...

Безопасные случайные числа в JavaScript?

Как создать криптографически безопасные случайные числа в javascript? ...

Хранение паролей с узлом.js и MongoDB

Я ищу некоторые примеры, как безопасно хранить пароли и другие конфиденциальные данные через узел.js и mongodb. Я хочу, чтобы все использовали уникальную соль, которую я буду хранить вместе с хэшем в документе mongo. для аутентификации мне нужно просто посолить и зашифровать вход и сопоставить его с сохраненным хэшем? должен ли я когда-нибудь расшифровать эти данные, и если да, то как это сделать? Как секретные ключи, или даже методы засолки надежно хранятся на сервере? Я слышал, что AES и ...

Использование SHA1 и RSA с java.безопасность.Подпись против MessageDigest и Шифра

Я пытаюсь понять, что такое Java java.безопасность.Подпись класса. Если я вычисляю дайджест сообщения SHA1, а затем шифрую этот дайджест с помощью RSA, я получаю другой результат, чтобы спросить подпись класс, чтобы подписать то же самое: // Generate new key KeyPair keyPair = KeyPairGenerator.getInstance("RSA").generateKeyPair(); PrivateKey privateKey = keyPair.getPrivate(); String plaintext = "This is the message being signed"; // Compute signature Signature instance = Signature.getInstance( ...

Как работает криптографически безопасный генератор случайных чисел?

Я понимаю, как работают стандартные генераторы случайных чисел. Но при работе с crytpography, случайные числа действительно должны быть случайными. Я знаю, что есть инструменты, которые читают космический белый шум чтобы помочь создать безопасные хэши, но ваш стандартный компьютер не имеет этого. Как криптографически безопасный генератор случайных чисел получить его значения не повторяются? ...

Почему мне нужно использовать класс Rfc2898DeriveBytes (in.NET) вместо того, чтобы напрямую использовать пароль в качестве ключа или IV?

в чем разница между использованием Rfc2898DeriveBytes и просто используя Encoding.ASCII.GetBytes(string object);? у меня был относительный успех с любым подходом, первый-более длинный подход, где последний прост и по существу. Оба, кажется, позволяют вам делать то же самое в конечном итоге, но я изо всех сил пытаюсь понять смысл использования первого над последним. основная концепция, которую я смог понять, заключается в том, что вы можете конвертировать строковые пароли в байт массивы, испол ...

Как создать уникальный открытый и закрытый ключ через RSA

Я создаю пользовательскую корзину покупок, где номера CC и дата Exp будут храниться в базе данных до обработки (затем удаляются). Мне нужно зашифровать эти данные (очевидно). Я хочу использовать класс RSACryptoServiceProvider. вот мой код для создания ключи. public static void AssignNewKey(){ const int PROVIDER_RSA_FULL = 1; const string CONTAINER_NAME = "KeyContainer"; CspParameters cspParams; cspParams = new CspParameters(PROVIDER_RSA_FULL); cspParams.KeyContainerName = ...