some docs

This commit is contained in:
Sergey Chernov 2022-11-30 20:34:24 +01:00
parent 318582cdb7
commit f321a82b8c

View File

@ -3,13 +3,20 @@ package net.sergeych.superlogin
import net.sergeych.unikrypto.SymmetricKey import net.sergeych.unikrypto.SymmetricKey
/** /**
* Super creds are derived from a password and given derivatino parameters. * Super creds are derived from a password and given derivation parameters.
* They should not being sent over the netowkr as is or stored so it is not serializable. * They should not be being sent over the network or stored (re-derivation is
* usually required), so it is not serializable.
* @param loginId cryptographically independent and strong id that depends on the password
* but does not disclose [loginAccessKey], Superlogin uses it to allow
* API access to ACO with login private key (it can be safely stored in the
* database)
* @param loginAccessKey first symmetric key, used to decrypt ACO
* @param extraKey just for future extensions. not used as for now.
*/ */
class DerivedKeys( class DerivedKeys(
val loginId: ByteArray, val loginId: ByteArray,
val loginAccessKey: SymmetricKey, val loginAccessKey: SymmetricKey,
val systemAccessKey: SymmetricKey @Suppress("unused") val extraKey: SymmetricKey
) { ) {
companion object { companion object {