อัตลักษณ์ของอธิปไตยด้วยตนเองเป็นตัวตนแบบพกพาตลอดชีวิตสำหรับบุคคลองค์กรหรือสิ่งที่ไม่ได้ขึ้นอยู่กับอำนาจส่วนกลางใด ๆ และไม่สามารถนำไปได้ อัตลักษณ์ของตนเองในตนเองเป็นรูปแบบความสัมพันธ์สองพรรคโดยไม่มีบุคคลที่สามมาระหว่างคุณและองค์กรตอนนี้ถือว่าเป็น "เพียร์" ของคุณ
SSI เป็นไปได้ในวันนี้ด้วย DIDS และข้อมูลรับรองที่ตรวจสอบได้
DID เป็นตัวระบุที่ไม่ซ้ำกันทั่วโลกรูปแบบใหม่ (URI) ที่ไม่ต้องการอำนาจการลงทะเบียนส่วนกลางเนื่องจากการควบคุมตัวระบุสามารถพิสูจน์ได้โดยใช้การเข้ารหัส คุณสามารถนึกถึงมันเหมือนหนึ่งในตัวระบุที่เราคุ้นเคยมากขึ้น - ชื่อโดเมนหรือหมายเลขโทรศัพท์ - โดยไม่ต้องมีนายทะเบียนกลางเช่น ICANN หรือ NANP
PREADIALE CREDENTIANT (VC) เป็นรูปแบบใหม่สำหรับข้อมูลรับรองดิจิตอลแบบทำงานร่วมกันที่กำหนดโดย W3C ที่ตรวจสอบได้คณะทำงานคณะทำงาน ข้อมูลรับรองที่ตรวจสอบได้สอดคล้องกับรูปแบบข้อมูลข้อมูลรับรองที่ตรวจสอบได้ของ W3C และพวกเขาอำนวยความสะดวกในการโต้ตอบโดยใช้รูปแบบที่เรียกว่า Triangle of Trust:
ผู้ออกตราสารสร้างข้อมูลรับรองโดยปกติแล้วจะมีเอกสาร JSON ที่ลงนามแบบดิจิทัลด้วยวิธีพิเศษ ผู้ถือเก็บไว้และผู้ตรวจสอบขอพิสูจน์ตามพวกเขา การนำเสนอที่ตรวจสอบได้ซึ่งผู้ถือให้การตรวจสอบเป็นแพ็คเกจของหลักฐานไม่ว่าจะเป็นข้อมูลประจำตัวหรือข้อมูลที่ได้จากข้อมูลประจำตัวอย่างน้อยหนึ่งรายการ - สร้างโดยผู้ถือเพื่อตอบสนองความต้องการของผู้ตรวจสอบ Verifiers เรียนรู้ด้วยความมั่นใจซึ่งผู้ออกหลักทรัพย์ได้พิสูจน์บางสิ่งบางอย่างโดยการตรวจสอบลายเซ็นดิจิตอลกับรีจิสทรีข้อมูลที่ตรวจสอบได้ (โดยทั่วไปคือ blockchain)
React MSDK ถูกสร้างขึ้นโดยใช้ Evernym Mobile SDK เป็นแพ็คเกจ React Native ที่เข้ากันได้กับ Aries ซึ่งช่วยให้สามารถสร้างกระเป๋าเงินดิจิตอลที่กำหนดเองได้อย่างรวดเร็ว
ด้วย REACEN-NATIONEM MOBILE SDK แอปพลิเคชันของคุณสามารถ:
แอพพลิเคชั่นตัวตนของ Wallet ช่วยให้กรณีการใช้งานมากมายรวมถึงการพิสูจน์ว่าคุณมีอายุเกินอายุตามกฎหมายโดยไม่เปิดเผยวันเดือนปีเกิดที่แน่นอนแบ่งปันบันทึกสุขภาพเป็นการส่วนตัวและปลอดภัยและดำเนินการกับแนวคิดชื่อผู้ใช้และ password ทุกครั้ง
สำหรับการทดสอบกระเป๋าเงินของคุณคุณสามารถใช้ Verity SDK ซึ่งเป็นตัวแทนของการสื่อสารตรงข้าม
ใน Evernym Mobile SDK และที่เก็บ SDK Verity คุณสามารถค้นหาข้อมูลที่เป็นประโยชน์มากมายเกี่ยวกับกระเป๋าเงินของอาคารและกระบวนการแลกเปลี่ยนข้อมูลรับรองที่ตรวจสอบได้
ในการสร้างโครงการใหม่คุณจะต้องทำตามขั้นตอนต่อไปนี้
สร้างโครงการ React Native ใหม่ เราจะเรียกมันว่า awesomeMsdkProject สำหรับคู่มือนี้
npx react-native init awesomeMsdkProject --version 0.65.1 หมายเหตุ : คุณต้องใช้ react-native เวอร์ชันเดียวกันตามที่ระบุในส่วน peerDependencies ของไฟล์ package.json สำหรับ Evernym React-Native-SDK รุ่น React-Native ที่แนะนำในปัจจุบันคือ 0.65.1 ด้วยการใช้เวอร์ชันอื่นคุณจะเสี่ยงต่อการมีปัญหากับ SDK
ในการรวม SDK ในแอปพลิเคชันใหม่ของคุณคุณต้องตั้งค่าการพึ่งพา
แทนที่ส่วนการขึ้นอยู่กับการออกจาก @evernym/react-native-white-label-app การพึ่งพา package.json ของคุณ json
"dependencies" : {
"@evernym/react-native-white-label-app" : " https://gitlab.com/evernym/mobile/react-native-white-label-app.git " ,
}, การพึ่งพาดั้งเดิมควรใส่ในการพึ่งพาแอพ (ดูปัญหา) พวกเขาถูกระบุว่าเป็นพึ่งพาเพื่อนใน SDK
เพิ่มการพึ่งพาเพียร์ทั้งหมดจาก @evernym/react-native-white-label-app ลงในส่วน dependencies ของ package.json แอปของคุณ json
"dependencies" : {
"@react-native-community/async-storage" : " x " ,
...
"react-native-zip-archive" : " x " ,
"react-native" : " 0.65.1 " ,
"rn-fetch-blob" : " x " ,
...
}, เพิ่ม devDependencies ทั้งหมดจาก @evernym/react-native-white-label-app ลงในส่วน devDependencies ของ package.json แอปของคุณ json
"devDependencies" : {
...
"copyfiles" : " x "
}, เพิ่มคำสั่งต่อไปนี้ในส่วน scripts ของคุณใน package.json แอปของคุณ json:
"scripts" : {
...
"evernym-sdk:configure" : " yarn --cwd node_modules/@evernym/react-native-white-label-app run configure "
}, คำสั่งนี้จะเพิ่มโมดูลที่จำเป็นสำหรับการปรับแต่งแอปพลิเคชันในอนาคตผ่าน evernym-sdk
ตอนนี้คุณสามารถติดตั้งการพึ่งพาทั้งหมดและทำการกำหนดค่าอัตโนมัติรันคำสั่งต่อไปนี้ในไดเรกทอรีโครงการของคุณ:
yarn
yarn evernym-sdk:configure สิ่งนี้จะติดตั้งการพึ่งพาทั้งหมดและเพิ่มโมดูลที่จำเป็นในไดเรกทอรี awesomeMsdkProject/app/evernym-sdk
ลบ App.js เริ่มต้นและใส่สิ่งต่อไปนี้ใน index.js :
import * as EvernymSdk from '@evernym/react-native-white-label-app' ;
import { name as appName } from './app.json' ;
EvernymSdk . createApp ( appName ) ; นำทางไปยังไฟล์ app/evernym-sdk/provision.js และกำหนดสภาพแวดล้อมที่แอปพลิเคชันและฟังก์ชั่นของคุณใช้เพื่อรับโทเค็นการจัดเตรียม
โปรดทราบ ว่าสภาพแวดล้อมแอปพลิเคชันจะต้องตรงกับสภาพแวดล้อมที่ลงทะเบียนเซิร์ฟเวอร์สปอนเซอร์
ตัวอย่างเช่นแอปพลิเคชันจะต้องใช้DEMOหากเซิร์ฟเวอร์สปอนเซอร์ลงทะเบียนในสภาพแวดล้อมDEMO
DEFAULT_SERVER_ENVIRONMENT - ชื่อของสภาพแวดล้อมที่จะใช้
มีสภาพแวดล้อมที่กำหนดไว้ล่วงหน้าหลายประการ:
// use default combination - DEMO for debug and PROD for releases builds
export const DEFAULT_SERVER_ENVIRONMENT = null
// use Demo env
// Agency: `https://agency.pps.evernym.com` and `Sovrin Staging Net`
export const DEFAULT_SERVER_ENVIRONMENT = 'DEMO'
// use Production env
// Agency: `https://agency.evernym.com` and `Sovrin Live Net`
export const DEFAULT_SERVER_ENVIRONMENT = 'PROD'
// use Staging env
// Agency: `https://agency.pstg.evernym.com` and `Sovrin Staging Net`
export const DEFAULT_SERVER_ENVIRONMENT = 'STAGING' นอกจากนี้คุณยังสามารถให้และใช้สภาพแวดล้อมที่กำหนดเองของคุณโดยใช้การรวมกันของ SERVER_ENVIRONMENTS และตัวแปร DEFAULT_SERVER_ENVIRONMENT :
export const SERVER_ENVIRONMENTS = {
'CUSTOM' : {
agencyUrl : 'ahency_url' ,
agencyDID : 'did' ,
agencyVerificationKey : 'verkey' ,
poolConfig : [ { key : 'staging' , genesis : 'genesis_transactions' } ] ,
}
}
export const DEFAULT_SERVER_ENVIRONMENT = 'CUSTOM' GET_PROVISION_TOKEN_FUNC - ฟังก์ชั่นจะถูกเรียกเพื่อรับโทเค็นการจัดสรรตัวแทนสำหรับแอปพลิเคชันของคุณ
/// example
export const GET_PROVISION_TOKEN_FUNC = async (): [error: string | null, token: string | null] => {
try {
// call your sponsor server endpoint
const response = fetch_api(your_endpoint)
// process response
// return result in format [error, token]
return [null, response.token]
} catch (error) {
return [error.message, null]
}
}
ยินดีด้วย! ตอนนี้เรามีส่วนหนึ่งของแอปพลิเคชัน JS เป็นขั้นตอนต่อไปเราจำเป็นต้องกำหนดค่าการสร้างสำหรับแพลตฟอร์มเป้าหมาย
หมายเหตุ : ณ จุดนี้คุณควรเสร็จสิ้นส่วนการกำหนดค่าแอพพื้นฐานแล้ว
เพื่อกำหนดค่าการสร้างแอปพลิเคชันของคุณสำหรับแพลตฟอร์ม Android ดูเอกสาร
หมายเหตุ : ณ จุดนี้คุณควรเสร็จสิ้นส่วนการกำหนดค่าแอพพื้นฐานแล้ว
เพื่อกำหนดค่าการสร้างแอปพลิเคชันของคุณสำหรับแพลตฟอร์ม iOS ดูเอกสาร
ดูเอกสารเพื่อรับภาพรวมของตัวเลือกการกำหนดค่าที่มีอยู่
ความพยายามนี้เป็นส่วนหนึ่งของโครงการที่ได้รับเงินทุนจากโครงการวิจัยและนวัตกรรมของสหภาพยุโรปในสหภาพยุโรปภายใต้ข้อตกลงการให้สิทธิ์หมายเลข 871932 ที่ส่งผ่านการเข้าร่วมของเราใน Essif-Lab ซึ่งมีวัตถุประสงค์เพื่อพัฒนาตัวตนของตนเองเพื่อประโยชน์ของตนเอง