This post is my reply to a comment by @alexander_slesarev on Referendum #62: Metadata for offline signers.
The quoted blocks are the comments that appear on Polkassembly. My responses are the bullet points beneath the quote blocks.
Alexander_slesarev wrote:
- Yes, eventually it would inevitably be developed by us or another party. We could build a rust-based API similar to how Polkadot Vault works, or something Swift-native. The protocol would be published - maybe it would be you who would implement it?
-
While I enjoyed your demonstration, I have low confidence in the feasibility of NFC for your use case on the Apple platform.
Alexander_slesarev wrote:
- We are not going to use payment NFC stack. The protocol is based on the most basic and widespread NFC protocol - packets are just written as NDEF messages with no particular response expected.
-
In order to utilize the NFC hardware built into iPhone, and to publish to the App Store, Kampela will be required to use the Core NFC Framework.
-
The Apple Developer documentation explicitly states that Core NFC doesn’t support payment-related Application IDs.
-
Publishing the Kampela Hardware Wallet to the App Store will be subject to the App Store Review Guidelines.
Alexander_slesarev wrote:
they have power to do anything with their hardware - and we have the power to build an external NFC communication device if needed.
-
Attempting to bypass Core NFC to access device hardware could result in rejection or expulsion from the App Store.
-
I would suggest asking Ledger R&D if they considered NFC vs Bluetooth when designing their Nano X product.
Alexander_slesarev wrote:
- We have not contacted Apple on publishing anything at all; I would not expect this to be an issue - the app would have simpler functionality that Polkadot Vault (that I was releasing through AppStore at some moment in history, the only thing they had issue with was airplane mode requirement)
-
The Polkadot Vault code referenced from Polkadot Vault with source code located at parity-signer will differ in at least the following significant way:
- Polkadot Vault uses the third-party QRCode Swift Package by Darren Ford.
- Kampela will be required to use the Apple Core NFC framework.
-
I strongly urge that Kampela contact Apple directly for further guidance and clarification.
-
Included with every Apple Developer account membership are two free TSIs (Technical Support Incidents) that can be used to request code level support. TSIs can also be purchased as needed. Perhaps Polkadot Vault could submit a TSI on your behalf.
Alexander_slesarev wrote:
and apps like Nova wallet that would just make Kampela interface as part of their functionality are already in AppStore.
- I strongly urge that the Nova Wallet team submit an Apple TSI to determine feasibility.
Alexander_slesarev wrote:
Worst case scenario, as you said on AAG session a few days ago, we would hope for sideloading law, or, if things are yet worse, on adding an add-on device we could develop later.
-
In reviewing my off the cuff speaking on AAG, I now understand how I may have miscommunicated. I should have clarified when Leemo spoke about the difficulty of publishing to the App Store.
-
While I do “hope” that sideloading will become available in the EU, it is not the basis of the Finsig SDK. As stated in my Tech Talk post and in my Realistic Expectations note.