From f299770465daefdb309c72845f41c9c078ba6d49 Mon Sep 17 00:00:00 2001
From: MITSUNARI Shigeo <herumi@nifty.com>
Date: Sun, 9 Apr 2017 13:46:11 +0900
Subject: add getData() and setData()

---
 src/bls.cpp | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

(limited to 'src')

diff --git a/src/bls.cpp b/src/bls.cpp
index 64cd40c..312cf23 100644
--- a/src/bls.cpp
+++ b/src/bls.cpp
@@ -230,6 +230,14 @@ std::istream& operator>>(std::istream& is, Id& id)
 {
 	return is >> id.getInner().v;
 }
+void Id::getData(std::string& str) const
+{
+	getInner().v.getStr(str, mcl::IoTight);
+}
+void Id::setData(const std::string& str)
+{
+	getInner().v.setStr(str, mcl::IoTight);
+}
 
 bool Id::isZero() const
 {
@@ -255,6 +263,14 @@ std::istream& operator>>(std::istream& os, Sign& s)
 {
 	return os >> s.getInner().sHm;
 }
+void Sign::getData(std::string& str) const
+{
+	getInner().sHm.getStr(str, mcl::IoTight);
+}
+void Sign::setData(const std::string& str)
+{
+	getInner().sHm.setStr(str, mcl::IoTight);
+}
 
 bool Sign::verify(const PublicKey& pub, const std::string& m) const
 {
@@ -322,6 +338,14 @@ std::istream& operator>>(std::istream& is, PublicKey& pub)
 	return is >> pub.getInner().sQ;
 }
 
+void PublicKey::getData(std::string& str) const
+{
+	getInner().sQ.getStr(str, mcl::IoTight);
+}
+void PublicKey::setData(const std::string& str)
+{
+	getInner().sQ.setStr(str, mcl::IoTight);
+}
 void PublicKey::set(const PublicKey *mpk, size_t k, const Id& id)
 {
 	WrapArray<PublicKey, G2> w(mpk, k);
@@ -359,6 +383,14 @@ std::istream& operator>>(std::istream& is, SecretKey& sec)
 {
 	return is >> sec.getInner().s;
 }
+void SecretKey::getData(std::string& str) const
+{
+	getInner().s.getStr(str, mcl::IoTight);
+}
+void SecretKey::setData(const std::string& str)
+{
+	getInner().s.setStr(str, mcl::IoTight);
+}
 
 void SecretKey::init()
 {
-- 
cgit v1.2.3