learn cryptography recently,
it is found that when bilibili logs in, sliding the authentication code will return a rsa public key + hash,
and the rsa public key will remain unchanged. It is estimated to be updated periodically.
there is a picture below:
if you don"t understand, ask:
1: what is this hash for?
2: if the public key is updated when the user enters the account password, wouldn"t the user experience be too bad?
3: encrypting with the public key of the rsa front-end password, and decrypting the back-end private key to get the plaintext to do other encryption processing repository, isn"t it against the principle that only God and you know the password? It should not be passed to the backend after irreversible encryption at the front end, and the backend is doing processing. (https is not discussed here)