Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

homework_6 #87

Open
walkline opened this issue Jan 19, 2018 · 0 comments
Open

homework_6 #87

walkline opened this issue Jan 19, 2018 · 0 comments

Comments

@walkline
Copy link
Contributor

walkline commented Jan 19, 2018

Как и говорил на занятии - вот вам необязательная домашка.

На этот раз у вас есть шаблон - https://github.com/MastersAcademy/go-course-2017/tree/master/templates/homework6 . Скопируйте эту папку в свою и начинайте работать с этими файлами.
В шаблоне есть функция - BrutSha256, вам нужно ее реализовать.
Кроме того, скорость выполнения этой реализации будет измеряться, и вы сможете посоревноваться(у кого самый быстрый алгоритм 🙂)
Всю реализацию не обязательно писать в мейн файле, можете создавать свои пакеты и их вызывать с функции BrutSha256.

Детали. Есть такое понятие хеш функция и конкретная ее реализация SHA256. Ее реализация есть в стандартной библиотеке go (crypto/sha256).
SHA256 используют только в одну сторону (нельзя просто взять и получить данные, которые были использованы для получения хешсуммы).
Вам необходимо найти те данные, которые были использованы для получения хешсуммы, имея при этом длину этих данных и символы которые могут содержаться в этих данных.
Одна из реализаций (единственная?) - это просто перебрать все возможные варианты.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant