Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: use mpc-signing-kit instead of tss-client #8

Closed
wants to merge 3 commits into from

Conversation

ieow
Copy link
Contributor

@ieow ieow commented Jan 26, 2024

No description provided.

@ieow ieow changed the base branch from feat/providers to main February 1, 2024 04:05
@himanshuchawla009
Copy link
Contributor

himanshuchawla009 commented Apr 30, 2024

  • Need to rebase with master
  • Need to support both Tkey mpc provider + mpc core kit provider
  • Need some way to support cocoapods

@@ -1,6 +1,15 @@
{
"object": {
"pins": [
{
"package": "AnyCodable",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This dependency should not be needed here.

@@ -12,20 +21,38 @@
},
{
"package": "CryptoSwift",
"repositoryURL": "https://github.com/krzyzanowskim/CryptoSwift.git",
"repositoryURL": "https://github.com/krzyzanowskim/CryptoSwift",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This package cannot be included, it has to be removed.

}
},
{
"package": "swift-system",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Many of the rest of these dependencies should not be included here.

@@ -5,27 +5,39 @@ import PackageDescription

let package = Package(
name: "Web3SwiftMpcProvider",
platforms: [.iOS(.v13), .macOS(.v11)],
platforms: [.iOS(.v14), .macOS(.v11)],
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is needed in v14?

Comment on lines 10 to +15
.library(
name: "Web3SwiftMpcProvider",
targets: ["Web3SwiftMpcProvider"]),
name: "MPCEthereumProvider",
targets: ["MPCEthereumProvider"]),
.library(
name: "MPCBitcoinProvider",
targets: ["MPCBitcoinProvider"]),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This will have to be condensed into single export for cocoapods

}

public func schnorrSign(message: Data, publicKey: Data) -> Data {
return Data()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We'd need to implement this.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not until frost is implemented in rust

@@ -0,0 +1,172 @@
import BigInt
import Foundation
import curveSecp256k1
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For this import you'll need a canImport() macro.

import curveSecp256k1
import web3
import mpc_core_kit_swift

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why dump all the classes, enums, etc in the same file over logical seperation?

extension MpcCoreKit : EthereumAccountProtocol {
public var address: web3.EthereumAddress {
// try async
return EthereumAddress(KeyUtil.generateAddress(from: self.getTssPubKey().suffix(64) ).toChecksumAddress())
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm. I remmeber self.getTssPubKey being both async and throwable, if I remember correctly it needs to remain so. What changed here?

@@ -1,6 +1,6 @@
import BigInt
import web3
import Web3SwiftMpcProvider
import MPCEthereumProvider
import XCTest

final class Web3SwiftMpcProviderTests: XCTestCase {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why have you disabled all the tests?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants