The demand for data encryption is generally divided into two situations in real business scenarios:

  1. When the new business start to launch, and the security department stipulates that the sensitive information related to users, such as banks and mobile phone numbers, should be encrypted and stored in the database, and then decrypted when used. Because it is a brand new system, there is no inventory data cleaning problem, so the implementation is relatively simple.

  • How to encrypt the historical data, a.k.a.s data clean.
  • How to encrypt the newly added data and store it in the database without changing the business SQL and logic; then decrypt the taken out data when use it.
  • How to securely, seamlessly and transparently migrate plaintext and ciphertext data between business systems.

In the real business scenario, the relevant business development team often needs to implement and maintain a set of encryption and decryption system according to the needs of the company’s security department. When the encryption scenario changes, the encryption system often faces the risk of reconstruction or modification. In addition, for the online business system, it is relatively complex to realize seamless encryption transformation with transparency, security and low risk without modifying the business logic and SQL.

Provides a security and transparent data encryption solution, which is the main design goal of Apache ShardingSphere data encryption module.

At the same time, its flexibility can also help users avoid complex rebuilding and modification risks caused by encryption scenario changes.

Existing services

For mature services that have already been launched, users need to consider the historical data cleansing and the switchover between old and new features.