Skip to content

Commit

Permalink
Update Xcode version and package dependencies; enhance InitializeTran…
Browse files Browse the repository at this point in the history
…sferData structure to include hashing algorithms
  • Loading branch information
phisakel committed Jan 15, 2025
1 parent f8a7a0b commit 2529cf1
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 12 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/swift.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:
steps:
- uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: '16.1'
xcode-version: '16.2'
- name: Get swift version
run: swift --version
- uses: actions/checkout@v4
Expand Down
10 changes: 5 additions & 5 deletions Package.resolved
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
{
"originHash" : "0334db293306eafc7f9541f6ae0a8f3f10c0b5d1d3f585b7f5dcbe3247ffa790",
"originHash" : "9da3283ae22e944ff5ef5633cc13e1e8b3d586671c41d35ffb438c2b002aa3c7",
"pins" : [
{
"identity" : "eudi-lib-ios-iso18013-data-model",
"kind" : "remoteSourceControl",
"location" : "https://github.com/eu-digital-identity-wallet/eudi-lib-ios-iso18013-data-model.git",
"state" : {
"revision" : "ef353c447c7716c1fe5f5905ff98e089f5a29d43",
"version" : "0.5.1"
"revision" : "885c4decfc8bdfc5525c993d08a854c2c760058e",
"version" : "0.5.3"
}
},
{
"identity" : "eudi-lib-ios-iso18013-security",
"kind" : "remoteSourceControl",
"location" : "https://github.com/eu-digital-identity-wallet/eudi-lib-ios-iso18013-security.git",
"state" : {
"revision" : "d3d9935b24b05902f840471bb70f651caa7f4cb5",
"version" : "0.4.0"
"revision" : "48cab4f3fb92b70412a808c1a902d0c00db092e8",
"version" : "0.4.3"
}
},
{
Expand Down
2 changes: 1 addition & 1 deletion Package.swift
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ let package = Package(
targets: ["MdocDataTransfer18013"]),
],
dependencies: [
.package(url: "https://github.com/eu-digital-identity-wallet/eudi-lib-ios-iso18013-security.git", exact: "0.4.0"),
.package(url: "https://github.com/eu-digital-identity-wallet/eudi-lib-ios-iso18013-security.git", exact: "0.4.3"),
],
targets: [
// Targets are the basic building blocks of a package, defining a module or a test suite.
Expand Down
14 changes: 9 additions & 5 deletions Sources/MdocDataTransfer18013/InitializeTransferInfo.swift
Original file line number Diff line number Diff line change
Expand Up @@ -4,29 +4,31 @@ import MdocSecurity18013

public struct InitializeTransferData: Sendable {

public init(dataFormats: [String : String], documentData: [String : Data], docDisplayNames: [String: [String: [String: String]]?], privateKeyData: [String : String], trustedCertificates: [Data], deviceAuthMethod: String, idsToDocTypes: [String : String]) {
public init(dataFormats: [String : String], documentData: [String : Data], docDisplayNames: [String: [String: [String: String]]?], privateKeyData: [String : String], trustedCertificates: [Data], deviceAuthMethod: String, idsToDocTypes: [String : String], hashingAlgs: [String: String]) {
self.dataFormats = dataFormats
self.documentData = documentData
self.docDisplayNames = docDisplayNames
self.privateKeyData = privateKeyData
self.trustedCertificates = trustedCertificates
self.deviceAuthMethod = deviceAuthMethod
self.idsToDocTypes = idsToDocTypes
self.hashingAlgs = hashingAlgs
}

public let dataFormats: [String: String]
/// doc-id to document data
public let documentData: [String: Data]
// doc-id to doc.fields display names
/// document-id to doc.fields display names
public let docDisplayNames: [String: [String: [String: String]]?]
/// doc-id to private key secure area name
public let privateKeyData: [String: String]
/// trusted certificates
public let trustedCertificates: [Data]
/// device auth method
public let deviceAuthMethod: String
// document id to document type map
/// document-id to document type map
public let idsToDocTypes: [String: String]
var hashingAlgs: [String: String]

public func toInitializeTransferInfo() -> InitializeTransferInfo {
// filter data and private keys by format
Expand All @@ -35,7 +37,7 @@ public struct InitializeTransferData: Sendable {
let privateKeyObjects = Dictionary.init(uniqueKeysWithValues: privateKeyData.map { k,v in (k, CoseKeyPrivate(privateKeyId: k, secureArea: SecureAreaRegistry.shared.get(name: v))) })
let iaca = trustedCertificates.map { SecCertificateCreateWithData(nil, $0 as CFData)! }
let deviceAuthMethod = DeviceAuthMethod(rawValue: deviceAuthMethod) ?? .deviceMac
return InitializeTransferInfo(dataFormats: dataFormats, documentObjects: documentObjects, docDisplayNames: docDisplayNames, privateKeyObjects: privateKeyObjects, iaca: iaca, deviceAuthMethod: deviceAuthMethod, idsToDocTypes: idsToDocTypes)
return InitializeTransferInfo(dataFormats: dataFormats, documentObjects: documentObjects, docDisplayNames: docDisplayNames, privateKeyObjects: privateKeyObjects, iaca: iaca, deviceAuthMethod: deviceAuthMethod, idsToDocTypes: idsToDocTypes, hashingAlgs: hashingAlgs)
}
}

Expand All @@ -52,6 +54,8 @@ public struct InitializeTransferInfo {
public let iaca: [SecCertificate]
/// device auth method
public let deviceAuthMethod: DeviceAuthMethod
// document id to document type map
// document-id to document type map
public let idsToDocTypes: [String: String]
// document-id to hashing algorithm
public let hashingAlgs:[String: String]
}

0 comments on commit 2529cf1

Please sign in to comment.