Paper 2020/584 Original: eprint.iacr.org/2020/584 ↗

vCNN: Verifiable Convolutional Neural Network based on zk-SNARKs

Seunghwa Lee
Hankyung Ko
Jihye Kim
Hyunok Oh
Abstract

With the development of AI systems, services using them expand to various applications. The widespread adoption of AI systems relies substantially on the ability to trust their output. Therefore, it is becoming important for a client to be able to check whether the AI inference services have been correctly calculated. Since the weight value in a CNN model is an asset of service providers, the client should be able to check the correctness of the result without the weight value. Furthermore, when the result is checked by a third party, it should be possible to verify the correctness even without the user’s input data. Fortunately, zero-knowledge Succinct Non-interactive ARguments of Knowledge (zk-SNARKs) allow to verify the result without input and weight values. However, the proving time in zk-SNARKs is too slow to be applied to real AI applications. This paper proposes a new efficient verifiable convolutional neural network (vCNN) framework which accelerates the proving performance tremendously. To increase the proving performance, we propose a new efficient relation representation for convolution equations. While the proving complexity of convolution is O(ln) in the existing zk-SNARK approaches, it reduces to O(l + n) in the proposed approach where l and n denote the size of kernel and the data in CNNs. Experimental results show that the proposed vCNN improves prove performance by 20 fold for a simple MNIST and 18000 fold for VGG16. The security of the proposed scheme is proven formally.

Metadata
Available format(s)
PDF
Category
Cryptographic protocols
Publication info
Preprint.
History
2020-12-18: last updated
2020-05-22: published
Short URL
https://ia.cr/2020/584
License
https://creativecommons.org/licenses/by/4.0/

BibTeX

@misc{cryptoeprint:2020/584,
      author = {Seunghwa Lee and Hankyung Ko and Jihye Kim and Hyunok Oh},
      title = {vCNN: Verifiable Convolutional Neural Network based on zk-SNARKs},
      howpublished = {Cryptology {ePrint} Archive, Paper 2020/584},
      year = {2020},
      url = {https://eprint.iacr.org/2020/584}
}
Note: In order to protect the privacy of readers, this archive does not use cookies or embedded third party content.