What:
Dovetail will provide a optional parameter ("–security") for user to secure the report.
With this parameter, dovetail will generate a report in cipher-text and a secret key in cipher-text together instead of a single plain-text report and meanwhile a digital signature comes together to make it more secure .
Why:
The report in plain-text is vulnerable from malicious attacks.
If user want to secure their report and do not want the report be tampered with by any unexpected person,they can simply add this parameter into the command line.
Users do not need to know or learn any details about that how to secure.
How:
The whole security workflow show as following:
- user generate RSA key pairs
- dovetail generate a random secret key
- encrypt this report with this secret key by AES256 encryption algorithm
- encrypt this secret key with RSA public key by RSA encryption algorithm
- vendor generate RSA key pairs
- dovetail generate a digest from report with MD5
- encrypt digest with private key from vendor
- send encrypted report, encrypted digest, encrypted key to your target user
- the receiver decrypt the secret key with his own RSA private key to get original secret key
- the receiver decrypt the report with this secret key to get the plain-text report
- the receiver decrypt the digest with vendor's public key to get original digest
- the receiver generate a digest from report with MD5 get new digest
- the receiver check if original digest and new digest are the same with each other