Initial cloud-services repo - gateway service + pkg modules
This commit is contained in:
50
pkg/common/ecc_keys.go
Normal file
50
pkg/common/ecc_keys.go
Normal file
@@ -0,0 +1,50 @@
|
||||
package common
|
||||
|
||||
import (
|
||||
"fiskerinc.com/modules/common/dbbasemodel"
|
||||
)
|
||||
|
||||
type ECCKeys struct {
|
||||
ECU string `json:"ecu,omitempty" pg:",pk"`
|
||||
Env string `json:"env,omitempty" pg:",pk"`
|
||||
PubKey1 *BinaryHex `json:"pub_key_level_1,omitempty" pg:"pub_key_level_1,type:bytea" swaggertype:"string" format:"hex" example:"9a1a6949d7f8a511df6e2e2771e444dbd6de97e7d98bdecbb5adc4b8965ce3bef353f523dbea123d7882dc043d415cda02810bad1b6f1b8c6202234a424b7d5b"`
|
||||
PrivKey1 *BinaryHex `json:"level_1,omitempty" pg:"priv_key_level_1,type:bytea" swaggertype:"string" format:"hex" example:"407f59557fb64ae98bc30b5370fab138f4827e14784d79bcf707dbe35ba2b85d"`
|
||||
PubKey2 *BinaryHex `json:"pub_key_level_2,omitempty" pg:"pub_key_level_2,type:bytea" swaggertype:"string" format:"hex" example:"9a1a6949d7f8a511df6e2e2771e444dbd6de97e7d98bdecbb5adc4b8965ce3bef353f523dbea123d7882dc043d415cda02810bad1b6f1b8c6202234a424b7d5b"`
|
||||
PrivKey2 *BinaryHex `json:"level_2,omitempty" pg:"priv_key_level_2,type:bytea" swaggertype:"string" format:"hex" example:"407f59557fb64ae98bc30b5370fab138f4827e14784d79bcf707dbe35ba2b85d"`
|
||||
PubKey3 *BinaryHex `json:"pub_key_level_3,omitempty" pg:"pub_key_level_3,type:bytea" swaggertype:"string" format:"hex" example:"9a1a6949d7f8a511df6e2e2771e444dbd6de97e7d98bdecbb5adc4b8965ce3bef353f523dbea123d7882dc043d415cda02810bad1b6f1b8c6202234a424b7d5b"`
|
||||
PrivKey3 *BinaryHex `json:"level_3,omitempty" pg:"priv_key_level_3,type:bytea" swaggertype:"string" format:"hex" example:"407f59557fb64ae98bc30b5370fab138f4827e14784d79bcf707dbe35ba2b85d"`
|
||||
dbbasemodel.DBModelBase
|
||||
}
|
||||
|
||||
func (ek *ECCKeys) Init(pub1 *BinaryHex, pub2 *BinaryHex, pub3 *BinaryHex, priv1 *BinaryHex, priv2 *BinaryHex, priv3 *BinaryHex) {
|
||||
ek.PubKey1 = pub1
|
||||
ek.PubKey2 = pub2
|
||||
ek.PubKey3 = pub3
|
||||
ek.PrivKey1 = priv1
|
||||
ek.PrivKey2 = priv2
|
||||
ek.PrivKey3 = priv3
|
||||
}
|
||||
|
||||
// Use this to remove unneeded values when adding to update manifest's ecc_keys
|
||||
func (ek *ECCKeys) ScrubForManifest() {
|
||||
ek.ScrubForAftersales()
|
||||
ek.PubKey1 = nil
|
||||
ek.PubKey2 = nil
|
||||
ek.PubKey3 = nil
|
||||
}
|
||||
|
||||
func (ek *ECCKeys) ScrubForAftersales() {
|
||||
ek.ECU = ""
|
||||
ek.Env = ""
|
||||
ek.CreatedAt = nil
|
||||
ek.UpdatedAt = nil
|
||||
}
|
||||
|
||||
// This transforming nonsense is getting pretty crazy here
|
||||
// Unsure if this will actually work
|
||||
func (ek *ECCKeys) TransformECUName() {
|
||||
replacement, ok := ECUReplacement()[ek.ECU]
|
||||
if ok {
|
||||
ek.ECU = replacement
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user