- ASP.NET Core 2 High Performance(Second Edition)
- James Singleton
- 148字
- 2021-07-08 09:39:01
Slower is sometimes better
In some situations, processes are designed to be slow, and this is essential to their operation and security. A good example of this, which may be a hit in profiling, is password hashing or key stretching. A secure password hashing function should be slow so that the password, which (despite being bad practice) may have been reused on other services, is not easily recovered.
We should not use generic hashing functions, such as MD5, SHA1, and SHA256, to hash passwords because they are too quick. Some better algorithms that are designed for this task are PBKDF2 and bcrypt or even Argon2 for new projects. Always remember to use a unique salt per password too. We won't go into any more details here, but you can clearly see that speeding up password hashing would be bad, and it's important to identify where to apply optimizations.
- 數據庫程序員面試筆試真題與解析
- Kibana Essentials
- 在最好的年紀學Python:小學生趣味編程
- 零基礎學Scratch少兒編程:小學課本中的Scratch創意編程
- YARN Essentials
- Learning Neo4j 3.x(Second Edition)
- C語言實驗指導及習題解析
- Apache Kafka Quick Start Guide
- WordPress 4.0 Site Blueprints(Second Edition)
- ServiceNow:Building Powerful Workflows
- OpenCV with Python By Example
- 代替VBA!用Python輕松實現Excel編程
- Bootstrap for Rails
- Natural Language Processing with Python Quick Start Guide
- Practical Microservices