• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

input-output-hk / atala-prism-building-blocks / 5141710482

01 Jun 2023 07:46AM UTC coverage: 27.329%. Remained the same
5141710482

push

atala-dev
chore(release): cut atala prism 1.4.0 release

# [1.4.0](https://github.com/input-output-hk/atala-prism-building-blocks/compare/prism-agent-v1.3.0...prism-agent-v1.4.0) (2023-06-01)

### Bug Fixes

* **prism-agent:** infinite loop in proof presentation execution ([#540](https://github.com/input-output-hk/atala-prism-building-blocks/issues/540)) ([6a26bb7](https://github.com/input-output-hk/atala-prism-building-blocks/commit/6a26bb78d))

### Features

* **prism-agent:** add support for hierarchical deterministic key with seed ([#534](https://github.com/input-output-hk/atala-prism-building-blocks/issues/534)) ([6129baf](https://github.com/input-output-hk/atala-prism-building-blocks/commit/6129baf12))

2426 of 8877 relevant lines covered (27.33%)

0.27 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/castor/lib/core/src/main/scala/io/iohk/atala/castor/core/model/did/PublicKey.scala
1
package io.iohk.atala.castor.core.model.did
2

3
import io.iohk.atala.shared.models.Base64UrlString
4
import io.iohk.atala.prism.crypto.EC
5

6
final case class PublicKey(
7
    id: String,
8
    purpose: VerificationRelationship,
9
    publicKeyData: PublicKeyData
10
)
11

12
enum InternalKeyPurpose {
13
  case Master extends InternalKeyPurpose
14
  case Revocation extends InternalKeyPurpose
15
}
16

17
final case class InternalPublicKey(
18
    id: String,
19
    purpose: InternalKeyPurpose,
20
    publicKeyData: PublicKeyData
21
)
22

23
sealed trait PublicKeyData
24

25
object PublicKeyData {
26
  final case class ECKeyData(
27
      crv: EllipticCurve,
28
      x: Base64UrlString,
29
      y: Base64UrlString
30
  ) extends PublicKeyData
31

32
  final case class ECCompressedKeyData(
33
      crv: EllipticCurve,
34
      data: Base64UrlString
35
  ) extends PublicKeyData {
×
36
    def toUncompressedKeyData: ECKeyData = {
×
37
      val prism14PublicKey = EC.INSTANCE.toPublicKeyFromCompressed(data.toByteArray)
×
38
      val ecPoint = prism14PublicKey.getCurvePoint()
39
      ECKeyData(
40
        crv = crv,
×
41
        x = Base64UrlString.fromByteArray(ecPoint.getX().bytes()),
×
42
        y = Base64UrlString.fromByteArray(ecPoint.getY().bytes())
43
      )
44
    }
45
  }
46
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc