1e41f4b71Sopenharmony_ci# Crypto Framework Changelog
2e41f4b71Sopenharmony_ci
3e41f4b71Sopenharmony_ci## cl.crypto_architecture.1 Change of Sign.update and Verify.update
4e41f4b71Sopenharmony_ci
5e41f4b71Sopenharmony_ci**Access Level**
6e41f4b71Sopenharmony_ci
7e41f4b71Sopenharmony_ciPublic
8e41f4b71Sopenharmony_ci
9e41f4b71Sopenharmony_ci**Reason for Change**
10e41f4b71Sopenharmony_ci
11e41f4b71Sopenharmony_ciWhen DSA algorithm is used for signing or signature verification with the digest algorithm set to **NoHash**, **update()** is not supported. However, **update()** returns a success message.
12e41f4b71Sopenharmony_ci
13e41f4b71Sopenharmony_ci**Change Impact**
14e41f4b71Sopenharmony_ci
15e41f4b71Sopenharmony_ciThis change is a non-compatible change.
16e41f4b71Sopenharmony_ci
17e41f4b71Sopenharmony_ciBefore the change:<br>When DSA is used for signing with the digest algorithm set to **NoHash**, calling **update()** returns a success message, but the signature generated is incorrect.
18e41f4b71Sopenharmony_ci
19e41f4b71Sopenharmony_ciAfter the change:<br>When DSA is used for signing with the digest algorithm set to **NoHash**, calling **update()** returns ERR_CRYPTO_OPERATION.
20e41f4b71Sopenharmony_ci
21e41f4b71Sopenharmony_ciBefore the change:<br>When DSA is used to verify the signature data with the digest algorithm set to **NoHash**, calling **update()** returns a success message, but the signature verification fails.
22e41f4b71Sopenharmony_ci
23e41f4b71Sopenharmony_ciAfter the change:<br>When DSA is used to verify the signature data with the digest algorithm set to **NoHash**, calling **update()** returns ERR_CRYPTO_OPERATION.
24e41f4b71Sopenharmony_ci
25e41f4b71Sopenharmony_ci**Start API Level**
26e41f4b71Sopenharmony_ci
27e41f4b71Sopenharmony_ci10
28e41f4b71Sopenharmony_ci
29e41f4b71Sopenharmony_ci**Change Since**
30e41f4b71Sopenharmony_ci
31e41f4b71Sopenharmony_ciOpenHarmony SDK 5.0.0.22
32e41f4b71Sopenharmony_ci
33e41f4b71Sopenharmony_ci**Key API/Component Changes**
34e41f4b71Sopenharmony_ci
35e41f4b71Sopenharmony_ci**Sign.update** and **Verify.update** in @ohos.security.cryptoFramework.d.ts
36e41f4b71Sopenharmony_ci
37e41f4b71Sopenharmony_ci**Adaptation Guide**
38e41f4b71Sopenharmony_ci
39e41f4b71Sopenharmony_ciWhen DSA is used for signing or signature verification and the digest algorithm is set to **NoHash**, do not use **update()**. If **Sign.init** and **Sign.sign** are called in signing, use **Verify.init** and **Verify.verify** or the sync APIs in signature verification.
40