From 21634e74faaa413b31ac1d331bb2eb164903c5f7 Mon Sep 17 00:00:00 2001 From: Puria Nafisi Azizi Date: Mon, 9 Dec 2024 17:10:29 +0100 Subject: [PATCH 1/8] fear: order by .md frontmatter needs title+order --- bun.lockb | Bin 51339 -> 52144 bytes docs/.vitepress/config.mts | 33 +++++++++--------- .../{1_orgadmin => orgadmin}/auth_server.md | 0 .../guides/{1_orgadmin => orgadmin}/create.md | 0 .../credential_issuer.md | 0 docs/guides/{1_orgadmin => orgadmin}/index.md | 4 +++ .../{1_orgadmin => orgadmin}/issuance_flow.md | 0 .../{1_orgadmin => orgadmin}/support.md | 0 .../guides/{2_wallet => wallet}/1_register.md | 0 .../guides/{2_wallet => wallet}/2_join_org.md | 0 .../{2_wallet => wallet}/3_get_credential.md | 0 .../4_present_credential.md | 0 .../{2_wallet => wallet}/5_preferences.md | 0 docs/guides/{2_wallet => wallet}/index.md | 4 +++ 14 files changed, 25 insertions(+), 16 deletions(-) rename docs/guides/{1_orgadmin => orgadmin}/auth_server.md (100%) rename docs/guides/{1_orgadmin => orgadmin}/create.md (100%) rename docs/guides/{1_orgadmin => orgadmin}/credential_issuer.md (100%) rename docs/guides/{1_orgadmin => orgadmin}/index.md (94%) rename docs/guides/{1_orgadmin => orgadmin}/issuance_flow.md (100%) rename docs/guides/{1_orgadmin => orgadmin}/support.md (100%) rename docs/guides/{2_wallet => wallet}/1_register.md (100%) rename docs/guides/{2_wallet => wallet}/2_join_org.md (100%) rename docs/guides/{2_wallet => wallet}/3_get_credential.md (100%) rename docs/guides/{2_wallet => wallet}/4_present_credential.md (100%) rename docs/guides/{2_wallet => wallet}/5_preferences.md (100%) rename docs/guides/{2_wallet => wallet}/index.md (91%) diff --git a/bun.lockb b/bun.lockb index 07bd16316ad78346adeefee56b5e25c4629479d8..7ac65fb928bfb1757779c179878367092a781f2f 100755 GIT binary patch delta 7602 zcmc&(30#y{lK;MjmP5G|wLiN-P(fRzvAGmcKCd87jLMiDPec%iErQD75u@Eiyaj|( z5u*{Ki6@Ch9gRnfCac+a5O*hLCXPokGrH&mk4d7d#>~II!_G|H?EZEqnfIfrYK~TI&wfcpiK{ z?6jaXSJkNYPQj@%?&r*s9ECZIXRsi+B1Az50$vK9@d@xPf#-v74xC^R1V3P_hI0yv z9mS5EB8$fFgkB)z=RDN$5uSn&0De+YQSqFd={dqW&G7VTMaAe8;*Emf3x$Hrf@zLy zLAZ+nEx?Coj?Hghdj?wkR3HGSJ`tyL> zpnsIc_XBPVzN^;X7MRC*X!1K?TH@4Qmq4J;bqbgb>;uN1Ya<@;$+aAqD7$oZ_#qMu{nFfco?1(=Uywx&NYLda4EKEyy11Sf#;=NbbA4w|mO z9E7d3fp-zQyi@1l2 zX=nX@bLyimG|@X%98TN4W#jLlHI(YTlZ*+t(kTk{(i7@8pi-5-fw;)MnG)xb)mIje zk;7Luh#s`VH(4A;jlQyRnTH?@Qk1WNQccBq3c>(o*i33{E*p1&S0v(NaM0T2Fb>BocB123Q95_1T{vXf^YQO~f6~_hk)zH#7t|=KZ`Fsat!0C$6-{ZKY?Kgi zgDAgsk}(}rib8D$g^fbr%_q`m1gP3K3zVvN6qGtvL|CfQA)tmTV^=@vy98>O($@`9 zs!C^p(yV||#~KlWE9A)DayKtG`g}<%3f7_JdOOM5IT}7f^~lv78)c z*?0_mBITQt#QW4}mJM+h>S{?A^T=V5eYWDp^-`k2j-$LnjTTuvP1X?E7>_&Hm%g+l z84E!rDpUig{!AGH+f&!jWN|DxLS=CeKaG)LiZ7u_Vj)@E%RaAxmtoqU1IhR~IQZwE z>w$g`?ia_9HB1(($bsi4v^`8V_CkV5q^Q8Vf>(?R4_!6jJD%3epxUlGJ*O_;csccZA z73v76@d{kO=GrUO7r*j2s|f zN1e)qShmu>k9hzVtTe{VW4+2!qLp4jV9bu%HJ&l+#b`WZmd9y4W0uEjd^~@E;nE8! z0A78XCSc6{SsMS7Va%_zADe);dyb~}kH*e_w85v@<1K$tTfpC8ry^j5xtaoFWNu*@ zfX{9PfaT=?4&y2Sx9?+?R|7bR*8-TY1#tUujQwW?p6C?~Zvf`@ear@51+ZQnfLk5F z8?X()jWIiZ0Kn0I2*B-WnC%?~h033X$xC8JZfDN1m@Puap+<#8P4Ztk_cL49m z1&#k5FgM05|2=@mU)Jzd4Sxa5jjFi2o#UMfB)G-=6U5mT^`WZ&k2F= z`_G;S^!?AmTBDhQpMx$xem;N|i5Xoqq0{rU659#4}-0awR`p$ik`e%G(vy1dq6m# zBTvhjLju$RHUTyRwgUK_Nq|*=)qpirGJjOiEKsunk$}#CG`cjur*$HzOaOmV#R8%M zC`Kqb+6>HZnJa+LsIRka?|M*g0(JxT0Nw`d1?&Ut2mBhqZ)*M`vjcXQ;(^v{A@;6= z7w;rOaPL-UsfX|6g^EZRzn)?ibbS`9a_K*)y~PQ3TMrw~7`@7`Z~Z5?B8juXwjKaw zC8Zn2ElSpa*3!2CIQ= z3r%7IITuOL&0MIva*p0w$USh&tk>&akGwKj{Kf9kZdVk!MX&P(3{1Hg(D%z;25~}9 zTTHAiQP9larDqq#YLh5yRJ}9d=RJH;XQ^J?PK+n>V#%zR6T5w~x$u16+v8!*Zi}(? zK(N#B#S(t3I~G3|uh;rc?q0d_;-V&RMXLvE>D9n2zkeHlWZ*Lg-I5)2b8)Nz)xfYN zL&Yr0Um_*wg_Uayn$LbI&eb2vv9<&@qt}E=vmgG-e#-HoTjJ+SN0yi@dhzJU(nU+& zT59O1%%k`j?Mt_pnBx26d|Kj&K5ccf^RTl=H$ovEfr4<;3tOHyy<%rv|Bv~Q^n}Eo zAY@bDrIJ~%ltrAZ9X|To3l(g-hb<9qmC=l)v0??izVrogE%_~brPTw>g5=?uy~ygFAFyqo73fGF8qMbSRQNEi;stc+q6uttbN&2L|Df0GWS#ca>=Y0E7R6B zHTA1I|JW_RO`k894E`{xMum+ z+;YA8dT~K+iha#z$K8^)!4z6yGVA5qohgp=Lb>yLw?aQktB}M|lvg2{^*eDmp1USz1ofWnmK>rlVOcLXAOBO;wpMKi z-*d~aQh22#enm-@l0`38Ck#FF>rK`BUUX~WR!pyqvFNqj`t|bbFZT$EGKgB_3SC0z z-O3oGfjgD4;xiPnGFB|3F?f!k@|BW#EZ!QN&>BN0j`I%)>+4Qv*>rqmtT|tkC#CiI z^EcMwJ8ttGoJ;Eo}tvI%4FymO24WKGwVg=+_ZC%g)Q?> z<4z%6AUcF&R8=JzH23Q0O4W1XJ&LNvV#Cy{wQOkM;MpCnOyFyXOM`^oGK{jST^24R z2Vu_IPim%roieK0@FWR$??8{MV+?T}DTZRqdYLxHa3=Mwp|(J53T`vM!OoMDq|_f~ zAw3D{mFGXsYua(Qwoe0Gz|BpB3&EY#Vs^XM5kaLLN1h254V~yJnK~ID;ItD4%pVb@o)vTqMz&D<)l$4(?k+ERDgV!fOPk!o^@8}8s~=y#vfWYV zmfWOUt0jwGIR9i!+``n$7v6Bo!y;+oT9f9bI@wLCtO=p&ns#(|b(tXd!YDj(7gK_M%_^L`4nBXYc@Sx8^ZqUCiHIXsou4gqH86G{y&46;jK@mesItd zDDJ~IR|_2M-^Yeq@_!jKh4$1+c&A`a^=Ytns$OUE-Ns*oXk9kovon|y*4dmnMbk42 zi*kfB1CkFt96av5llX`XghL-Ld;8J*Bhucu0G_Y%ABtag1ZEGpcojU-uj}=^am#ZD z_qQy@RptfE{d$lo{KkPD1fJz-t7{5A4jI?;4e$Zrzi9fe!(I2?ow*-8D%P%BOOEHh zYe{PUucJ4pKABF_-F1=i{jxKQGhdiiGBcV#s_{>pqN1qjQ%hcO6h!4`7EjBc#{ZGZ zo;Ir>%25nKWi_@% delta 7165 zcmc&&3tUxIy5H--QO;3b3d-hyAc&d?2uDCdIlkiIXli9@p@IS`pvz+X^$ zkGD><*rW$^QZzR5#trvvB7#jz@)YilJ6N=^q!da;F)NA{@`9WN3kz}; zWsj$#bcfsqy$xv5{g-vo2JkVEJ2(jR0Tvc4$cBF2PW(K-oOaRf58-l0YBDpH<0T!>#_^T z?dJh`@Y8_k+Ud$GnZ3ARey(y1bIjBEdtguC%Ru~GO}c)CE*AsYo~`T0>-t1sFX$t5 zxf`%I+ZuEy^h_jG0%WOw{GloY}K;X3x({fz0h8zM^xTc|`?RFfY7b zu`pmZT~(MjUdJ*ZJNAK|?$T6@I$Q>^P@{)`JvcFH1a<63ep<)meH9!usesI9cxUNCq z4n75P#XT4x&r~x8!hUn^)H+%QIT&)nU`2^;UFvzogIr!2BAD8|9Oh>+731lUSBhC+ zC#Fd*{Ra0GxD2WD!T!CAIgvq`R)?sfN~^=vZleFNrV5oT-5lmA9*QznI&TH1HPs1j zw5&FYEZrUEC7!xPv{5Bwt65Qo(*&OsaX(qS9ioCVy&a}=W~%Z|6-m?vRSj8u9Ht9h zXq-=~IS#vZEc;uQgGMBB(ak$z7AofOgtZ?N?(WN9WTx9N&db`rmJ3L^-HxR zVTy*MlHf{~<&f@@QoS`vETc9*hv^e5S^ZN*BxU+L%mcBW577kw6!UU$(z?jEW8=7x1N0#a`UoaT1~oYr0d!cx;^fz#T15u8@z61Z`) zy4nU3~^YBv89H| zaF~p>+)9>EhgeUUp$;=|vJvDRnqnRSE?IIL!Hr_hbgB=H>ys*?sIrekJkC$^Wo#~t zrB8|&L78C=OHsI@IMB3@jHKU%b0Au-LOBFV4_1nPlo{?2SyYMV)6^F3Fni#1NTvya zDVE{j#z@b}fk|d3q)hn|2dJ&DL->*pu%K{1``(gEEVPt!}CQ4+xU6<|XpKm5*EC@G| zGEp}$vOZgve>Oz_viwvB*xAYw&Fx=~&Y!E{o7?3ne?)(Q+t4Wu?C_}Wz~~FA0P)&Y zf!JOR;QZ zlP1h~!JLLm-G{bhze(?Ud0OU`L_eBSG#{TKduFENpR_y|TqQUh{P2my2T55$X&&pB zP~TYt%mLUqzO7rb#|W-&HU18t=+XLQ_7~>X9r>4fTQl_JMAlNWI)?}UwNoqH2wN(2 z^W#ohQyxJT&hBQunuk)8)9&O;pN}X$;xJHoxOWBeIlLLf>$VZZ7eO^>HK+!(2EkX0z{8JFNfSv>K4O0(l z01;>{C>xYRi(OOw`+$lTHQknS2^_0>l@`3pAp< zcl;~hwu5$nT0pOYT0yUY_+I1hm{`z@`mr%^InP_`Tjeef>$K%CpagBC(JKbg(<^!j z3%$9*E;4CUg^K@hU#(O{9)+z`6UyMmYwGpN;P)H+*Y7e3d(6<7c#Lx;Ecn~vYU-FW zW&7oG&$}%fsR;FDTc!?$o>>`xOT$_xHRNBZn$8PKT@`OL(n))r_x#VoGrMP+#LW1Z zAu)IdLDj4Dw&We;sX<+(pR5VybJ0IJwy61mC=OG9-~f{_Dx zyK-g4_DWNvdrU^!X@^{s>KQ_M^>Hme>f6_Bz&`{Az;|jP#=K*`slTuOGbbb}$l<6~&tdoUX|9c3XmJ zMy+Zy(rpL2PHIg1Q_)^ef#8?%Ka%QeRq+753@;;D_oQveu0LFu^PtGMu*M8%+pRmwt_3Y#X>0tpRv;YS5{ zPNdCv+URJ5ie$q@JY&gB_Kab;6%gvKl*z;Y{LLMumjeV}A6!Pm;s?v5RY}zwW^P>P zww#28572LaZQj}x+^Jm)_7$Z9&?xaeBi)CSXyK^fW6;(J=MT0VUx!>}~0 z4xst#yiA=DRJJZY!ALpAo7ywBkB{*~-78vZ&{l zUfTL~)9}MMFR-VRW8#!Eky>IlI55h;Jo3Kw0C5PK9vG&ckX7o=pZHX*`(UlxauFW* zws1Wbl=6MSs{8ZZmaCDJy*>!Z#qtfRXrazVRqUf}>(vA!n|gSP^3+xT)4?X3De-o` zQH*@+@#M?zjvTlv({1sg!y8nak(VvoHNLaGI8C_iV<;BwPp7AvRI!jk@mxtu8&#W; z0)F2sy_*cwvC)${ntI^^@NHI|MjE`VZ{WU+58ev#6Ha_o zA#3EiJw)7=|4$v66-TT4V^*b4&F}e<9+3P&C0>9kMQ!hjA3HiCghpO|_M}^#r4bE@+*tM}ieZP2f>rBXOpS-Sd!I991k{*Wa x3;FD&?{*J*?dviZWTbFiUsb&4oBvKo%7;OEUg64qir?J7wPy3F!Bn2L;cxCgk?{Zk diff --git a/docs/.vitepress/config.mts b/docs/.vitepress/config.mts index 979015b..910957a 100644 --- a/docs/.vitepress/config.mts +++ b/docs/.vitepress/config.mts @@ -1,9 +1,14 @@ import { defineConfig } from "vitepress"; import { generateSidebar } from "vitepress-sidebar"; -import umlPlugin from 'markdown-it-plantuml'; +import umlPlugin from "markdown-it-plantuml"; const vitepressSidebarOptions = { - documentRootPath: "docs", + documentRootPath: "/docs", + useTitleFromFrontmatter: true, + sortMenusByFrontmatterOrder: true, + frontmatterOrderDefaultValue: 999, + includeFolderIndexFile: true, + useFolderLinkFromIndexFile: true, manualSortFileNameByPriority: [ "intro.md", "core-technologies.md", @@ -16,10 +21,6 @@ const vitepressSidebarOptions = { "deploy_microservices.md", "orgadmin", ], - useTitleFromFileHeading: true, - useFolderTitleFromIndexFile: true, - useFolderLinkFromIndexFile: true, - collapsed: false, includeDotFiles: false, }; @@ -33,10 +34,10 @@ export default defineConfig({ head: [ [ - 'script', + "script", {}, - `window.$crisp=[];window.CRISP_WEBSITE_ID="8dd97823-ddac-401e-991a-7498234e4f00";(function(){d=document;s=d.createElement("script");s.src="https://client.crisp.chat/l.js";s.async=1;d.getElementsByTagName("head")[0].appendChild(s);})();` - ] + `window.$crisp=[];window.CRISP_WEBSITE_ID="8dd97823-ddac-401e-991a-7498234e4f00";(function(){d=document;s=d.createElement("script");s.src="https://client.crisp.chat/l.js";s.async=1;d.getElementsByTagName("head")[0].appendChild(s);})();`, + ], ], themeConfig: { @@ -49,11 +50,11 @@ export default defineConfig({ { text: "Wallet App", link: "/guides/2_wallet/" }, { text: "Verifier App", link: "/guides/3_verifier/" }, { text: "System admins", link: "/guides/4_sysadmin/" }, - { text: "Signatures", link: "/guides/5_signature/" } + { text: "Signatures", link: "/guides/5_signature/" }, ], }, { text: "Get started", link: "/get_started" }, - { text: "Pricing", link: "/guides/9_pricing/" }, + { text: "Pricing", link: "/guides/9_pricing/" }, ], logo: "https://raw.githubusercontent.com/ForkbombEu/DIDroom/45a5ffb737d81c33449bf2d394627a88ddbfc1d0/images/DIDroom_logo.svg", sidebar: generateSidebar(vitepressSidebarOptions), @@ -69,9 +70,9 @@ export default defineConfig({ 'Copyleft πŸ„― 2023-present Forkbomb B.V.', }, }, - markdown: { - config(md) { - md.use(umlPlugin) - } - } + markdown: { + config(md) { + md.use(umlPlugin); + }, + }, }); diff --git a/docs/guides/1_orgadmin/auth_server.md b/docs/guides/orgadmin/auth_server.md similarity index 100% rename from docs/guides/1_orgadmin/auth_server.md rename to docs/guides/orgadmin/auth_server.md diff --git a/docs/guides/1_orgadmin/create.md b/docs/guides/orgadmin/create.md similarity index 100% rename from docs/guides/1_orgadmin/create.md rename to docs/guides/orgadmin/create.md diff --git a/docs/guides/1_orgadmin/credential_issuer.md b/docs/guides/orgadmin/credential_issuer.md similarity index 100% rename from docs/guides/1_orgadmin/credential_issuer.md rename to docs/guides/orgadmin/credential_issuer.md diff --git a/docs/guides/1_orgadmin/index.md b/docs/guides/orgadmin/index.md similarity index 94% rename from docs/guides/1_orgadmin/index.md rename to docs/guides/orgadmin/index.md index b8c44d4..8add761 100644 --- a/docs/guides/1_orgadmin/index.md +++ b/docs/guides/orgadmin/index.md @@ -1,3 +1,7 @@ +--- +order: 2 +title: πŸ‘©β€βš–οΈ DIDroom Control Room +--- # πŸ‘©β€βš–οΈ DIDroom Control Room Welcome, System Administrator! This guide provides step-by-step instructions for oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities. diff --git a/docs/guides/1_orgadmin/issuance_flow.md b/docs/guides/orgadmin/issuance_flow.md similarity index 100% rename from docs/guides/1_orgadmin/issuance_flow.md rename to docs/guides/orgadmin/issuance_flow.md diff --git a/docs/guides/1_orgadmin/support.md b/docs/guides/orgadmin/support.md similarity index 100% rename from docs/guides/1_orgadmin/support.md rename to docs/guides/orgadmin/support.md diff --git a/docs/guides/2_wallet/1_register.md b/docs/guides/wallet/1_register.md similarity index 100% rename from docs/guides/2_wallet/1_register.md rename to docs/guides/wallet/1_register.md diff --git a/docs/guides/2_wallet/2_join_org.md b/docs/guides/wallet/2_join_org.md similarity index 100% rename from docs/guides/2_wallet/2_join_org.md rename to docs/guides/wallet/2_join_org.md diff --git a/docs/guides/2_wallet/3_get_credential.md b/docs/guides/wallet/3_get_credential.md similarity index 100% rename from docs/guides/2_wallet/3_get_credential.md rename to docs/guides/wallet/3_get_credential.md diff --git a/docs/guides/2_wallet/4_present_credential.md b/docs/guides/wallet/4_present_credential.md similarity index 100% rename from docs/guides/2_wallet/4_present_credential.md rename to docs/guides/wallet/4_present_credential.md diff --git a/docs/guides/2_wallet/5_preferences.md b/docs/guides/wallet/5_preferences.md similarity index 100% rename from docs/guides/2_wallet/5_preferences.md rename to docs/guides/wallet/5_preferences.md diff --git a/docs/guides/2_wallet/index.md b/docs/guides/wallet/index.md similarity index 91% rename from docs/guides/2_wallet/index.md rename to docs/guides/wallet/index.md index 1f43c3e..00069b2 100755 --- a/docs/guides/2_wallet/index.md +++ b/docs/guides/wallet/index.md @@ -1,3 +1,7 @@ +--- +title: πŸ†” Wallet App +order: 1 +--- # πŸ†” Wallet App The [Wallet App](https://github.com/ForkbombEu/wallet) is an Android/iOS mobile app whose purpose is to **request** and **present credentials**. From 723f24d5b49d6b04e55961b7ab3e58b2c77e882d Mon Sep 17 00:00:00 2001 From: andrea-tabbles Date: Tue, 10 Dec 2024 11:26:55 +0100 Subject: [PATCH 2/8] feat: rename files, add Frontmatter sorting --- docs/.vitepress/config.mts | 12 +++---- docs/core-technologies.md | 5 +++ docs/get_started.md | 7 ++++ docs/guides/3_verifier/1_join_org.md | 7 ---- docs/guides/4_sysadmin/setup_dashboard.md | 6 ---- .../index.md | 6 ++++ .../generate_keys_keypairoom.md | 7 +++- .../{6_components => Components}/index.md | 8 ++++- .../{6_components => Components}/issuance.md | 8 ++++- .../verification.md | 5 +++ .../{orgadmin => Orgadmin}/auth_server.md | 5 +++ docs/guides/{orgadmin => Orgadmin}/create.md | 5 +++ .../credential_issuer.md | 5 +++ docs/guides/{orgadmin => Orgadmin}/index.md | 6 ++-- .../{orgadmin => Orgadmin}/issuance_flow.md | 5 +++ docs/guides/{orgadmin => Orgadmin}/support.md | 5 +++ docs/guides/{9_pricing => Pricing}/index.md | 11 +++++-- .../{9_pricing => Pricing}/pricing.md.unused | 0 .../{5_signature => Signature}/index.md | 7 +++- .../multisignature.md} | 5 +++ .../1_signature.md => Signature/signature.md} | 6 ++++ .../deploy_microservices.md | 6 ++++ docs/guides/{4_sysadmin => Sysadmin}/index.md | 5 +++ docs/guides/{4_sysadmin => Sysadmin}/setup.md | 11 +++++-- .../delete-account.md | 8 ++++- .../index.md | 5 +++ .../privacy-policy.md | 33 +++++++++++-------- docs/guides/{3_verifier => Verifier}/index.md | 9 +++-- docs/guides/Verifier/join_org.md | 12 +++++++ .../verification_flow.md} | 5 +++ .../3_verify.md => Verifier/verify.md} | 5 +++ .../get_credential.md} | 7 +++- docs/guides/{wallet => Wallet}/index.md | 4 +-- .../2_join_org.md => Wallet/join_org.md} | 7 +++- .../preferences.md} | 6 ++++ .../present_credential.md} | 7 ++++ docs/guides/Wallet/sign-up.md | 8 +++++ docs/guides/wallet/1_register.md | 3 -- docs/intro.md | 9 +++-- docs/pr-preview/pr-14/404.html | 2 +- docs/pr-preview/pr-14/aknowledgements.html | 2 +- .../pr-14/assets/chunks/metadata.b29d1707.js | 2 +- .../guides_1_orgadmin_index.md.DkIlQ0nG.js | 2 +- ...uides_1_orgadmin_index.md.DkIlQ0nG.lean.js | 2 +- .../guides_2_wallet_1_register.md.CPPTl48Y.js | 2 +- ...es_2_wallet_1_register.md.CPPTl48Y.lean.js | 2 +- .../guides_2_wallet_2_join_org.md.BmYSPL7K.js | 2 +- ...s_2_wallet_3_get_credential.md.BwY_6bmq.js | 2 +- .../guides_2_wallet_index.md.BsDrvFah.js | 2 +- ...uides_3_verifier_1_join_org.md.B3IV46lt.js | 2 +- ..._3_verifier_1_join_org.md.B3IV46lt.lean.js | 2 +- .../guides_3_verifier_index.md.Tz8n2ga9.js | 2 +- ...uides_3_verifier_index.md.Tz8n2ga9.lean.js | 2 +- .../guides_4_sysadmin_setup.md.BEbcAy0p.js | 4 +-- ...des_5_components_keypairoom.md.Ykbx3FWY.js | 2 +- .../pr-14/assets/intro.md.C-Y17fUh.js | 2 +- .../pr-14/assets/solution.md.BkQPubXR.js | 2 +- docs/pr-preview/pr-14/core-technologies.html | 2 +- docs/pr-preview/pr-14/get_started.html | 2 +- .../pr-14/guides/1_orgadmin/auth_server.html | 2 +- .../pr-14/guides/1_orgadmin/create.html | 2 +- .../guides/1_orgadmin/credential_issuer.html | 2 +- .../pr-14/guides/1_orgadmin/index.html | 4 +-- .../guides/1_orgadmin/issuance_flow.html | 2 +- .../pr-14/guides/2_wallet/1_register.html | 2 +- .../pr-14/guides/2_wallet/2_join_org.html | 2 +- .../guides/2_wallet/3_get_credential.html | 2 +- .../guides/2_wallet/4_present_credential.html | 2 +- .../pr-14/guides/2_wallet/5_preferences.html | 2 +- .../pr-14/guides/2_wallet/index.html | 2 +- .../pr-14/guides/3_verifier/1_join_org.html | 2 +- .../3_verifier/2_verification_flow.html | 2 +- .../pr-14/guides/3_verifier/3_verify.html | 2 +- .../pr-14/guides/3_verifier/index.html | 2 +- .../4_sysadmin/deploy_microservices.html | 2 +- .../pr-14/guides/4_sysadmin/index.html | 2 +- .../pr-14/guides/4_sysadmin/setup.html | 4 +-- .../guides/4_sysadmin/setup_dashboard.html | 2 +- .../pr-14/guides/5_components/index.html | 2 +- .../pr-14/guides/5_components/keypairoom.html | 2 +- docs/pr-preview/pr-14/guides/index.html | 2 +- docs/pr-preview/pr-14/intro.html | 2 +- docs/pr-preview/pr-14/solution.html | 2 +- docs/pr-preview/pr-16/404.html | 2 +- docs/pr-preview/pr-16/aknowledgements.html | 2 +- .../pr-16/assets/chunks/metadata.09587ecd.js | 2 +- .../guides_1_orgadmin_index.md.DkIlQ0nG.js | 2 +- ...uides_1_orgadmin_index.md.DkIlQ0nG.lean.js | 2 +- .../guides_2_wallet_1_register.md.wyy9AjUY.js | 2 +- ...es_2_wallet_1_register.md.wyy9AjUY.lean.js | 2 +- .../guides_2_wallet_2_join_org.md.BmYSPL7K.js | 2 +- ...s_2_wallet_3_get_credential.md.BwY_6bmq.js | 2 +- .../guides_2_wallet_index.md.BsDrvFah.js | 2 +- ...uides_3_verifier_1_join_org.md.B3IV46lt.js | 2 +- ..._3_verifier_1_join_org.md.B3IV46lt.lean.js | 2 +- .../guides_3_verifier_index.md.Tz8n2ga9.js | 2 +- ...uides_3_verifier_index.md.Tz8n2ga9.lean.js | 2 +- .../guides_4_sysadmin_setup.md.BEbcAy0p.js | 4 +-- ...des_6_components_keypairoom.md.BuLHkv71.js | 2 +- .../pr-16/assets/intro.md.C-Y17fUh.js | 2 +- .../pr-16/assets/solution.md.BkQPubXR.js | 2 +- docs/pr-preview/pr-16/core-technologies.html | 2 +- docs/pr-preview/pr-16/get_started.html | 2 +- .../pr-16/guides/1_orgadmin/auth_server.html | 2 +- .../pr-16/guides/1_orgadmin/create.html | 2 +- .../guides/1_orgadmin/credential_issuer.html | 2 +- .../pr-16/guides/1_orgadmin/index.html | 4 +-- .../guides/1_orgadmin/issuance_flow.html | 2 +- .../pr-16/guides/2_wallet/1_register.html | 2 +- .../pr-16/guides/2_wallet/2_join_org.html | 2 +- .../guides/2_wallet/3_get_credential.html | 2 +- .../guides/2_wallet/4_present_credential.html | 2 +- .../pr-16/guides/2_wallet/5_preferences.html | 2 +- .../pr-16/guides/2_wallet/index.html | 2 +- .../pr-16/guides/3_verifier/1_join_org.html | 2 +- .../3_verifier/2_verification_flow.html | 2 +- .../pr-16/guides/3_verifier/3_verify.html | 2 +- .../pr-16/guides/3_verifier/index.html | 2 +- .../4_sysadmin/deploy_microservices.html | 2 +- .../pr-16/guides/4_sysadmin/index.html | 2 +- .../pr-16/guides/4_sysadmin/setup.html | 4 +-- .../guides/4_sysadmin/setup_dashboard.html | 2 +- .../pr-16/guides/5_signature/1_signature.html | 2 +- .../guides/5_signature/2_multisignature.html | 2 +- .../pr-16/guides/5_signature/index.html | 2 +- .../pr-16/guides/6_components/index.html | 2 +- .../pr-16/guides/6_components/keypairoom.html | 2 +- docs/pr-preview/pr-16/guides/index.html | 2 +- docs/pr-preview/pr-16/intro.html | 2 +- docs/pr-preview/pr-16/solution.html | 2 +- .../pr-19/assets/chunks/metadata.58527ef3.js | 2 +- .../guides_1_orgadmin_index.md.B5vI1S-g.js | 2 +- ...uides_1_orgadmin_index.md.B5vI1S-g.lean.js | 2 +- .../guides_2_wallet_1_register.md.DwKfvmya.js | 2 +- ...es_2_wallet_1_register.md.DwKfvmya.lean.js | 2 +- .../guides_2_wallet_2_join_org.md.BL0Rgw6Y.js | 2 +- ...s_2_wallet_3_get_credential.md.D35u6qjt.js | 2 +- .../guides_2_wallet_index.md.x4zizmFt.js | 2 +- ...uides_3_verifier_1_join_org.md.Dq5D-GDE.js | 2 +- ..._3_verifier_1_join_org.md.Dq5D-GDE.lean.js | 2 +- .../guides_3_verifier_index.md.J5EOQLoL.js | 2 +- ...uides_3_verifier_index.md.J5EOQLoL.lean.js | 2 +- .../guides_4_sysadmin_setup.md.BxOShMJm.js | 4 +-- ...ts_generate_keys_keypairoom.md.Bw1C6GKu.js | 2 +- .../guides_6_components_index.md.CcJ0u-gA.js | 2 +- ...d-conditions_privacy-policy.md.DXN0USW9.js | 2 +- .../guides_9_pricing_index.md.bavMY-0B.js | 2 +- .../pr-19/assets/intro.md.DpMEAA1Q.js | 2 +- .../pr-19/assets/solution.md.DRKRW4FG.js | 2 +- docs/pr-preview/pr-19/core-technologies.html | 2 +- docs/pr-preview/pr-19/get_started.html | 2 +- .../pr-19/guides/1_orgadmin/auth_server.html | 2 +- .../pr-19/guides/1_orgadmin/create.html | 2 +- .../guides/1_orgadmin/credential_issuer.html | 2 +- .../pr-19/guides/1_orgadmin/index.html | 4 +-- .../guides/1_orgadmin/issuance_flow.html | 2 +- .../pr-19/guides/1_orgadmin/support.html | 2 +- .../pr-19/guides/2_wallet/1_register.html | 2 +- .../pr-19/guides/2_wallet/2_join_org.html | 2 +- .../guides/2_wallet/3_get_credential.html | 2 +- .../guides/2_wallet/4_present_credential.html | 2 +- .../pr-19/guides/2_wallet/5_preferences.html | 2 +- .../pr-19/guides/2_wallet/index.html | 2 +- .../pr-19/guides/3_verifier/1_join_org.html | 2 +- .../3_verifier/2_verification_flow.html | 2 +- .../pr-19/guides/3_verifier/3_verify.html | 2 +- .../pr-19/guides/3_verifier/index.html | 2 +- docs/pr-preview/pr-19/guides/404.html | 2 +- .../4_sysadmin/deploy_microservices.html | 2 +- .../pr-19/guides/4_sysadmin/index.html | 2 +- .../pr-19/guides/4_sysadmin/setup.html | 4 +-- .../guides/4_sysadmin/setup_dashboard.html | 2 +- .../pr-19/guides/5_signature/1_signature.html | 2 +- .../guides/5_signature/2_multisignature.html | 2 +- .../pr-19/guides/5_signature/index.html | 2 +- .../generate_keys_keypairoom.html | 2 +- .../pr-19/guides/6_components/index.html | 2 +- .../pr-19/guides/6_components/issuance.html | 2 +- .../guides/6_components/verification.html | 2 +- .../delete-account.html | 2 +- .../guides/7_terms-and-conditions/index.html | 2 +- .../privacy-policy.html | 2 +- .../guides/8_Acknowledgements/index.html | 2 +- .../pr-19/guides/9_pricing/index.html | 2 +- docs/pr-preview/pr-19/guides/index.html | 2 +- docs/pr-preview/pr-19/intro.html | 2 +- docs/pr-preview/pr-19/solution.html | 2 +- docs/solution.md | 9 +++-- 188 files changed, 387 insertions(+), 217 deletions(-) delete mode 100644 docs/guides/3_verifier/1_join_org.md delete mode 100644 docs/guides/4_sysadmin/setup_dashboard.md rename docs/guides/{8_Acknowledgements => Acknowledgements}/index.md (93%) rename docs/guides/{6_components => Components}/generate_keys_keypairoom.md (92%) rename docs/guides/{6_components => Components}/index.md (95%) rename docs/guides/{6_components => Components}/issuance.md (92%) rename docs/guides/{6_components => Components}/verification.md (96%) rename docs/guides/{orgadmin => Orgadmin}/auth_server.md (80%) rename docs/guides/{orgadmin => Orgadmin}/create.md (80%) rename docs/guides/{orgadmin => Orgadmin}/credential_issuer.md (81%) rename docs/guides/{orgadmin => Orgadmin}/index.md (92%) rename docs/guides/{orgadmin => Orgadmin}/issuance_flow.md (81%) rename docs/guides/{orgadmin => Orgadmin}/support.md (93%) rename docs/guides/{9_pricing => Pricing}/index.md (88%) rename docs/guides/{9_pricing => Pricing}/pricing.md.unused (100%) rename docs/guides/{5_signature => Signature}/index.md (92%) rename docs/guides/{5_signature/2_multisignature.md => Signature/multisignature.md} (97%) rename docs/guides/{5_signature/1_signature.md => Signature/signature.md} (96%) rename docs/guides/{4_sysadmin => Sysadmin}/deploy_microservices.md (99%) rename docs/guides/{4_sysadmin => Sysadmin}/index.md (94%) rename docs/guides/{4_sysadmin => Sysadmin}/setup.md (87%) rename docs/guides/{7_terms-and-conditions => Terms-and-conditions}/delete-account.md (57%) rename docs/guides/{7_terms-and-conditions => Terms-and-conditions}/index.md (99%) rename docs/guides/{7_terms-and-conditions => Terms-and-conditions}/privacy-policy.md (84%) rename docs/guides/{3_verifier => Verifier}/index.md (62%) create mode 100644 docs/guides/Verifier/join_org.md rename docs/guides/{3_verifier/2_verification_flow.md => Verifier/verification_flow.md} (86%) rename docs/guides/{3_verifier/3_verify.md => Verifier/verify.md} (88%) rename docs/guides/{wallet/3_get_credential.md => Wallet/get_credential.md} (84%) rename docs/guides/{wallet => Wallet}/index.md (83%) rename docs/guides/{wallet/2_join_org.md => Wallet/join_org.md} (73%) rename docs/guides/{wallet/5_preferences.md => Wallet/preferences.md} (83%) rename docs/guides/{wallet/4_present_credential.md => Wallet/present_credential.md} (95%) create mode 100644 docs/guides/Wallet/sign-up.md delete mode 100644 docs/guides/wallet/1_register.md diff --git a/docs/.vitepress/config.mts b/docs/.vitepress/config.mts index 910957a..0e267ab 100644 --- a/docs/.vitepress/config.mts +++ b/docs/.vitepress/config.mts @@ -46,15 +46,15 @@ export default defineConfig({ { text: "Guide", items: [ - { text: "Organization admins", link: "/guides/1_orgadmin/" }, - { text: "Wallet App", link: "/guides/2_wallet/" }, - { text: "Verifier App", link: "/guides/3_verifier/" }, - { text: "System admins", link: "/guides/4_sysadmin/" }, - { text: "Signatures", link: "/guides/5_signature/" }, + { text: "Organization admins", link: "/guides/Orgadmin/" }, + { text: "Wallet App", link: "/guides/Wallet/" }, + { text: "Verifier App", link: "/guides/Verifier/" }, + { text: "System admins", link: "/guides/Sysadmin/" }, + { text: "Signatures", link: "/guides/Signature/" }, ], }, { text: "Get started", link: "/get_started" }, - { text: "Pricing", link: "/guides/9_pricing/" }, + { text: "Pricing", link: "/guides/Pricing/" }, ], logo: "https://raw.githubusercontent.com/ForkbombEu/DIDroom/45a5ffb737d81c33449bf2d394627a88ddbfc1d0/images/DIDroom_logo.svg", sidebar: generateSidebar(vitepressSidebarOptions), diff --git a/docs/core-technologies.md b/docs/core-technologies.md index 4641b8c..38a6532 100644 --- a/docs/core-technologies.md +++ b/docs/core-technologies.md @@ -1,3 +1,8 @@ +--- +title: πŸ—οΈ Core Technologies +order: 20 +--- + # πŸ—οΈ Core Technologies ## πŸ” Zenroom diff --git a/docs/get_started.md b/docs/get_started.md index eb2c7de..150222d 100644 --- a/docs/get_started.md +++ b/docs/get_started.md @@ -1,3 +1,10 @@ +--- +title: 🏁 Get started +order: 40 +--- + + + # 🏁 Get started Welcome to the Didroom Get Started guide! πŸš€ We're thrilled to have you embark on this journey with us. Whether you're a seasoned **system administrator**, a savvy **organization administrator**, an enthusiastic **wallet holder**, or a meticulous **verifier**, this section is tailor-made to provide you with comprehensive, step-by-step instructions crafted specifically for your role within the Didroom ecosystem. diff --git a/docs/guides/3_verifier/1_join_org.md b/docs/guides/3_verifier/1_join_org.md deleted file mode 100644 index 23b6328..0000000 --- a/docs/guides/3_verifier/1_join_org.md +++ /dev/null @@ -1,7 +0,0 @@ -# Create an account and join an organization - -In order to use the Verifier app and the Verification Flow, the user is supposed to: -1. have an account on [DIDroom Control Room](https://dashboard.didroom.com/) -1. be part of an organization - -The Verifier only allows a user to login (with an existing account), meaning that an account has to be created on the [DIDroom Control Room](https://dashboard.didroom.com/) or in the Wallet \ No newline at end of file diff --git a/docs/guides/4_sysadmin/setup_dashboard.md b/docs/guides/4_sysadmin/setup_dashboard.md deleted file mode 100644 index 6d67274..0000000 --- a/docs/guides/4_sysadmin/setup_dashboard.md +++ /dev/null @@ -1,6 +0,0 @@ -# Self-Host the Dashboard - -#### for πŸ› οΈ System Administrator - - -This chapter contains best practices about deployment and Dev-Ops (**coming soon**). \ No newline at end of file diff --git a/docs/guides/8_Acknowledgements/index.md b/docs/guides/Acknowledgements/index.md similarity index 93% rename from docs/guides/8_Acknowledgements/index.md rename to docs/guides/Acknowledgements/index.md index a438594..3d55ec3 100755 --- a/docs/guides/8_Acknowledgements/index.md +++ b/docs/guides/Acknowledgements/index.md @@ -1,3 +1,9 @@ +--- +title: Acknowledgements +order: 80 +--- + + # 🫢🏻 Acknowledgements ## NGI Trustchain diff --git a/docs/guides/6_components/generate_keys_keypairoom.md b/docs/guides/Components/generate_keys_keypairoom.md similarity index 92% rename from docs/guides/6_components/generate_keys_keypairoom.md rename to docs/guides/Components/generate_keys_keypairoom.md index cc29899..7535b22 100755 --- a/docs/guides/6_components/generate_keys_keypairoom.md +++ b/docs/guides/Components/generate_keys_keypairoom.md @@ -1,3 +1,8 @@ +--- +title: (Re)generate keys with Keypairoom +order: 10 +--- + # Keypairoom: (re)generate your Secret Keys Keypairoom is component to **generate and regenerate a keyring**, containing multiple secret keys (along with the correspondet public keys) in a **deterministic and private way**. @@ -6,7 +11,7 @@ The cryptographic part consists of multiple [Zenroom](https://zenroom.org/) scri ## Privacy -The challenges are processed inside the client applications (the [Wallet App](https://github.com/ForkbombEu/wallet) or the browser where you opened the [DIDroom Control Room](https://dashboard.didroom.com/). Note: +The challenges are processed inside the client applications (the [Wallet App](https://github.com/ForkbombEu/wallet) or the browser where you opened the [DIDroom Dashboard](https://dashboard.didroom.com/). Note: - The Zenroom scripts processing the answers work **offline**. - Your answers are **never communicated to any external service**. - **No one can reconstruct them** based on their output: this is certain based on the math behind it, if you're curious you can read about it [here](https://github.com/ForkbombEu/client_zencode?tab=readme-ov-file#login-creation). diff --git a/docs/guides/6_components/index.md b/docs/guides/Components/index.md similarity index 95% rename from docs/guides/6_components/index.md rename to docs/guides/Components/index.md index 1fa8114..362719d 100644 --- a/docs/guides/6_components/index.md +++ b/docs/guides/Components/index.md @@ -1,9 +1,15 @@ +--- +title: Technology and Components +order: 60 +--- + + # πŸ“‘ Concepts/Components ## Issuance and Verification Flows -The flows contain the **general setup for the Issuance and Verification**, with focus on the parameters for a specific credential, such as name, description, logo, microservices issueing/verifying those. **The business logic and data structures** for the Issuance and Verification are **contained in templates**, which can be **selected inside the Issuance and Verification Flows**. The complexity within the protocols and cryptography and hidden behind the DIDroom Control room, the specs are in the pages [Issuance flow](./issuance.md) and [Verification flow](./verification.md). +The flows contain the **general setup for the Issuance and Verification**, with focus on the parameters for a specific credential, such as name, description, logo, microservices issueing/verifying those. **The business logic and data structures** for the Issuance and Verification are **contained in templates**, which can be **selected inside the Issuance and Verification Flows**. The complexity within the protocols and cryptography and hidden behind the DIDroom Dashboard, the specs are in the pages [Issuance flow](./issuance.md) and [Verification flow](./verification.md). diff --git a/docs/guides/6_components/issuance.md b/docs/guides/Components/issuance.md similarity index 92% rename from docs/guides/6_components/issuance.md rename to docs/guides/Components/issuance.md index 426aae9..b681a35 100755 --- a/docs/guides/6_components/issuance.md +++ b/docs/guides/Components/issuance.md @@ -1,3 +1,9 @@ +--- +title: Issuance (OpenID4VCI) +order: 20 +--- + + # Issuance flow The Issuance Flow is compatible with the [OpenID4VCI](https://openid.net/specs/openid-4-verifiable-credential-issuance-1_0.html) specification @@ -5,7 +11,7 @@ The Issuance Flow is compatible with the [OpenID4VCI](https://openid.net/specs/o ## Basics -The *DIDroom4VP* flow involves these main components: +The *DIDroom4VCI* flow involves these main components: - **Wallet**: [DIDroom Wallet](https://github.com/ForkbombEu/wallet) - **(Credential )Issuer**: a microservices contained in [DIDroom Microservices](https://github.com/ForkbombEu/DIDroom_microservices) - **Authorization Server**: a microservices contained in [DIDroom Microservices](https://github.com/ForkbombEu/DIDroom_microservices) diff --git a/docs/guides/6_components/verification.md b/docs/guides/Components/verification.md similarity index 96% rename from docs/guides/6_components/verification.md rename to docs/guides/Components/verification.md index 30becd5..fe2572e 100755 --- a/docs/guides/6_components/verification.md +++ b/docs/guides/Components/verification.md @@ -1,3 +1,8 @@ +--- +title: Verification Flow +order: 20 +--- + # Verification flow We are following very close the work of the OpenID Foundation on the [OpenID4VP](https://openid.net/specs/openid-4-verifiable-presentations-1_0.html) communication protocol. Since at the time of writing, *OpenID4VP* is still a draft, we implemented the custom verification flow **DIDroom4VP**. diff --git a/docs/guides/orgadmin/auth_server.md b/docs/guides/Orgadmin/auth_server.md similarity index 80% rename from docs/guides/orgadmin/auth_server.md rename to docs/guides/Orgadmin/auth_server.md index d6d1270..c3f8c4f 100644 --- a/docs/guides/orgadmin/auth_server.md +++ b/docs/guides/Orgadmin/auth_server.md @@ -1,3 +1,8 @@ +--- +title: Setup Authorization Server +order: 40 +--- + # Setup an authorization server metadata #### for πŸ‘©β€βš–οΈ Organization administrator diff --git a/docs/guides/orgadmin/create.md b/docs/guides/Orgadmin/create.md similarity index 80% rename from docs/guides/orgadmin/create.md rename to docs/guides/Orgadmin/create.md index e9cfab8..e2c6bc6 100644 --- a/docs/guides/orgadmin/create.md +++ b/docs/guides/Orgadmin/create.md @@ -1,3 +1,8 @@ +--- +title: Create an organization +order: 10 +--- + # Create an organization #### for πŸ‘©β€βš–οΈ Organization administrator diff --git a/docs/guides/orgadmin/credential_issuer.md b/docs/guides/Orgadmin/credential_issuer.md similarity index 81% rename from docs/guides/orgadmin/credential_issuer.md rename to docs/guides/Orgadmin/credential_issuer.md index 921ac96..a20d384 100644 --- a/docs/guides/orgadmin/credential_issuer.md +++ b/docs/guides/Orgadmin/credential_issuer.md @@ -1,3 +1,8 @@ +--- +title: Setup Credential Issuer +order: 30 +--- + # Setup a credential issuer metadata #### for πŸ‘©β€βš–οΈ Organization administrator diff --git a/docs/guides/orgadmin/index.md b/docs/guides/Orgadmin/index.md similarity index 92% rename from docs/guides/orgadmin/index.md rename to docs/guides/Orgadmin/index.md index 8add761..855c2f6 100644 --- a/docs/guides/orgadmin/index.md +++ b/docs/guides/Orgadmin/index.md @@ -1,8 +1,8 @@ --- -order: 2 -title: πŸ‘©β€βš–οΈ DIDroom Control Room +order: 30 +title: πŸ‘©β€βš–οΈ DIDroom Dashboard --- -# πŸ‘©β€βš–οΈ DIDroom Control Room +# πŸ‘©β€βš–οΈ DIDroom Dashboard Welcome, System Administrator! This guide provides step-by-step instructions for oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities. diff --git a/docs/guides/orgadmin/issuance_flow.md b/docs/guides/Orgadmin/issuance_flow.md similarity index 81% rename from docs/guides/orgadmin/issuance_flow.md rename to docs/guides/Orgadmin/issuance_flow.md index 840bd0a..bc1b214 100644 --- a/docs/guides/orgadmin/issuance_flow.md +++ b/docs/guides/Orgadmin/issuance_flow.md @@ -1,3 +1,8 @@ +--- +title: Credential issuance flows +order: 20 +--- + # Create a fully working credential issuing flow #### for πŸ‘©β€βš–οΈ Organization administrator diff --git a/docs/guides/orgadmin/support.md b/docs/guides/Orgadmin/support.md similarity index 93% rename from docs/guides/orgadmin/support.md rename to docs/guides/Orgadmin/support.md index 431f1b3..49b83db 100755 --- a/docs/guides/orgadmin/support.md +++ b/docs/guides/Orgadmin/support.md @@ -1,3 +1,8 @@ +--- +title: Support +order: 50 +--- + # Support We offer: diff --git a/docs/guides/9_pricing/index.md b/docs/guides/Pricing/index.md similarity index 88% rename from docs/guides/9_pricing/index.md rename to docs/guides/Pricing/index.md index 358f859..6ff855a 100755 --- a/docs/guides/9_pricing/index.md +++ b/docs/guides/Pricing/index.md @@ -1,3 +1,8 @@ +--- +title: Pricing +order: 90 +--- + # πŸ«±πŸ½β€πŸ«²πŸΏ Pricing πŸ«±πŸΎβ€πŸ«²πŸΌ ## Pricing Tables @@ -38,8 +43,8 @@ Below a description of the individual features. - Info: [Deploy Microservices](../4_sysadmin/deploy_microservices) ### Control Room -- Description: the DIDroom Control Room is the main web application to setup Organizations, users, Credential Issuance and Verification Flows and Microservices. -- Info: [DIDroom Control Room](../1_orgadmin/index) +- Description: the DIDroom Dashboard is the main web application to setup Organizations, users, Credential Issuance and Verification Flows and Microservices. +- Info: [DIDroom Dashboard](../1_orgadmin/index) ### Admin Dashboard - Description: the DIDroom Admin Dashboard is the backend of the whole DIDroom ecosystem. It is based on [Starters SaaS](https://github.com/dyne/starters) which itself is powered by [Pocketbase](https://github.com/pocketbase/pocketbase) @@ -53,7 +58,7 @@ Below a description of the individual features. - Info: we offer custom development and training for the customization ### White labeling -- Description: the [Wallet app](https://github.com/forkbombEu/wallet), the [Verifier App](https://github.com/forkbombEu/verifier) and the [DIDroom Control Room](https://github.com/ForkbombEu/signroom/tree/main/webapp) are white-label friendly. White-labeling is performed using [DIDroom-Components](https://github.com/ForkbombEu/didroom-components) and the [Playbook](https://forkbombeu.github.io/didroom-components/). +- Description: the [Wallet app](https://github.com/forkbombEu/wallet), the [Verifier App](https://github.com/forkbombEu/verifier) and the [DIDroom Dashboard](https://github.com/ForkbombEu/signroom/tree/main/webapp) are white-label friendly. White-labeling is performed using [DIDroom-Components](https://github.com/ForkbombEu/didroom-components) and the [Playbook](https://forkbombeu.github.io/didroom-components/). - Info: we offer support for white-labeling and custom development ### W3C-DID service diff --git a/docs/guides/9_pricing/pricing.md.unused b/docs/guides/Pricing/pricing.md.unused similarity index 100% rename from docs/guides/9_pricing/pricing.md.unused rename to docs/guides/Pricing/pricing.md.unused diff --git a/docs/guides/5_signature/index.md b/docs/guides/Signature/index.md similarity index 92% rename from docs/guides/5_signature/index.md rename to docs/guides/Signature/index.md index b9f5568..aeba6bb 100755 --- a/docs/guides/5_signature/index.md +++ b/docs/guides/Signature/index.md @@ -1,4 +1,9 @@ -# πŸ–ŠοΈ Signatures +--- +title: πŸ–ŠοΈ Signatures (*AdES) +order: 40 +--- + +# Signatures The application can produce different types of signatures, using different technologies for different purposes. diff --git a/docs/guides/5_signature/2_multisignature.md b/docs/guides/Signature/multisignature.md similarity index 97% rename from docs/guides/5_signature/2_multisignature.md rename to docs/guides/Signature/multisignature.md index a96595e..7c6a0fa 100755 --- a/docs/guides/5_signature/2_multisignature.md +++ b/docs/guides/Signature/multisignature.md @@ -1,3 +1,8 @@ +--- +title: Create a MultiSignature +order: 20 +--- + # Multisignature Flow The Multisignature Flow is a an implementation of the cryptographic flow described in the [Reflow Multisignature](https://arxiv.org/abs/2105.14527) paper. This allows users to create a JSON object to be signed, invite users to sign it, set a deadline and wait for their signatures. The signature process uses the homomorphic capabilities of the BLS 12-381 curve - see [here](https://hackmd.io/@benjaminion/bls12-381) if you're curious. The responses are anonymous and the output is a cryptographical object verifiable by anyone. diff --git a/docs/guides/5_signature/1_signature.md b/docs/guides/Signature/signature.md similarity index 96% rename from docs/guides/5_signature/1_signature.md rename to docs/guides/Signature/signature.md index 86519af..d0b3be8 100755 --- a/docs/guides/5_signature/1_signature.md +++ b/docs/guides/Signature/signature.md @@ -1,3 +1,9 @@ +--- +title: Create a Signature +order: 10 +--- + + # Signature The Signature features allow to you sign documents and files, according to the standards *PaDES, CaDES, JaDES or XaDES* using your secrets keys and a certificate. diff --git a/docs/guides/4_sysadmin/deploy_microservices.md b/docs/guides/Sysadmin/deploy_microservices.md similarity index 99% rename from docs/guides/4_sysadmin/deploy_microservices.md rename to docs/guides/Sysadmin/deploy_microservices.md index 4bbfcc1..da4f742 100644 --- a/docs/guides/4_sysadmin/deploy_microservices.md +++ b/docs/guides/Sysadmin/deploy_microservices.md @@ -1,3 +1,9 @@ +--- +title: Deploy microservices +order: 20 +--- + + # Deploy microservices #### for πŸ› οΈ System Administrator diff --git a/docs/guides/4_sysadmin/index.md b/docs/guides/Sysadmin/index.md similarity index 94% rename from docs/guides/4_sysadmin/index.md rename to docs/guides/Sysadmin/index.md index e77d2b4..75b026f 100644 --- a/docs/guides/4_sysadmin/index.md +++ b/docs/guides/Sysadmin/index.md @@ -1,3 +1,8 @@ +--- +title: πŸ–ŠοΈ System Administrator +order: 50 +--- + # πŸ› οΈ System Administrator Welcome, System Administrator! This guide provides step-by-step instructions for setting up and managing the infrastructure that powers DiDRoom. Whether you're deploying a new instance, self-hosting the dashboard, or deploying microservices, this guide has you covered. diff --git a/docs/guides/4_sysadmin/setup.md b/docs/guides/Sysadmin/setup.md similarity index 87% rename from docs/guides/4_sysadmin/setup.md rename to docs/guides/Sysadmin/setup.md index 77e3bef..895bb18 100644 --- a/docs/guides/4_sysadmin/setup.md +++ b/docs/guides/Sysadmin/setup.md @@ -1,3 +1,8 @@ +--- +title: Setup the Dashboard +order: 10 +--- + # Setup the Dashboard #### for πŸ› οΈ System Administrator @@ -31,7 +36,7 @@ Pay attention at the `--recursive` that will clone also the sub repositories! ::: -### 2. Run the Dashboard (Admin Panel and DIDroom Control Room) +### 2. Run the Dashboard (Admin Panel and DIDroom Dashboard) ```bash cd signroom @@ -40,14 +45,14 @@ docker compose up --build This will run the DIDroom Dashboard which includes two interconnected web-applications: - **Admin Panel**: based on PocketBase, this application is accessible only to the sysadmin and it allows to configure and edit data structure and API configurations. -- **DIDroom Control Room**: this the DIDroom web application accessible to all users, allows to manage credential issuance and verification flows and their deployment and the organizations +- **DIDroom Dashboard**: this the DIDroom web application accessible to all users, allows to manage credential issuance and verification flows and their deployment and the organizations The two web applications run on two different ports and have different user accounts. -### 3. Create an account and log in onto the DIDroom Control Room +### 3. Create an account and log in onto the DIDroom Dashboard Go to: diff --git a/docs/guides/7_terms-and-conditions/delete-account.md b/docs/guides/Terms-and-conditions/delete-account.md similarity index 57% rename from docs/guides/7_terms-and-conditions/delete-account.md rename to docs/guides/Terms-and-conditions/delete-account.md index 54603a3..10a0a3e 100644 --- a/docs/guides/7_terms-and-conditions/delete-account.md +++ b/docs/guides/Terms-and-conditions/delete-account.md @@ -1,9 +1,15 @@ +--- +title: Delete account +order: 10 +--- + + # Delete account **Last Updated:** [20.09.2024] -Please read below the privacy policies the DIDroom Wallet, DIDroom Wallet, and the DIDroom Control Room (Dashboard). +Please read below the privacy policies the DIDroom Wallet, DIDroom Wallet, and the DIDroom Dashboard (Dashboard). ## Step 1 diff --git a/docs/guides/7_terms-and-conditions/index.md b/docs/guides/Terms-and-conditions/index.md similarity index 99% rename from docs/guides/7_terms-and-conditions/index.md rename to docs/guides/Terms-and-conditions/index.md index b4b5d17..558bd52 100755 --- a/docs/guides/7_terms-and-conditions/index.md +++ b/docs/guides/Terms-and-conditions/index.md @@ -1,3 +1,8 @@ +--- +title: Terms and conditions +order: 70 +--- + # πŸ—Ž Terms and conditions diff --git a/docs/guides/7_terms-and-conditions/privacy-policy.md b/docs/guides/Terms-and-conditions/privacy-policy.md similarity index 84% rename from docs/guides/7_terms-and-conditions/privacy-policy.md rename to docs/guides/Terms-and-conditions/privacy-policy.md index 7ed3e8c..0f90b99 100755 --- a/docs/guides/7_terms-and-conditions/privacy-policy.md +++ b/docs/guides/Terms-and-conditions/privacy-policy.md @@ -1,6 +1,11 @@ +--- +title: Privacy Policies +order: 20 +--- + # Privacy Policies -Please read below the privacy policies the DIDroom Wallet, DIDroom Wallet, and the DIDroom Control Room (Dashboard). +Please read below the privacy policies the DIDroom Wallet, DIDroom Wallet, and the DIDroom Dashboard (Dashboard). ## πŸ“±DIDroom Wallet πŸ“± @@ -17,7 +22,7 @@ This Privacy Policy explains how Forkbomb B.V. ("we", "our", "us") collects, use The DIDroom Wallet app collects the following types of personal data: - **Names** - **Credential Data** -- **Organization Information**: The organization the user is part of on the DIDroom Control Room (Dashboard). +- **Organization Information**: The organization the user is part of on the DIDroom Dashboard (Dashboard). ### Device Information The Wallet app does not collect any device-related information, such as device IDs or location data. @@ -26,7 +31,7 @@ The Wallet app does not collect any device-related information, such as device I Data is collected through: - **User Input**: Information provided directly by the user. - **Device Sensors**: Information gathered through device sensors. -- **Interaction**: Interaction with DIDroom Control Room (Dashboard) and DIDroom microservices, operated by Forkbomb B.V. or third parties. +- **Interaction**: Interaction with DIDroom Dashboard (Dashboard) and DIDroom microservices, operated by Forkbomb B.V. or third parties. ## 3. Data Processing @@ -45,7 +50,7 @@ The data is processed locally on the device. However, the credential signature i ### Data Storage - **Secret Keys and Credentials**: Stored locally on the device. -- **Email and Organization Data**: Stored on the DIDroom Control Room (Dashboard), which is hosted in the Cloud based in Europe. +- **Email and Organization Data**: Stored on the DIDroom Dashboard (Dashboard), which is hosted in the Cloud based in Europe. ### Security Measures We implement the following security measures to protect your data: @@ -133,7 +138,7 @@ Data is processed locally on the device. However, credential signatures are veri ### Data Storage - **Personal Data**: No personal data is stored by the Verifier. -- **Operator Data**: Personal data of the person operating the Verifier is stored by the DIDroom Control Room (Dashboard). +- **Operator Data**: Personal data of the person operating the Verifier is stored by the DIDroom Dashboard (Dashboard). ### Security Measures We implement the following security measures to protect data: @@ -150,7 +155,7 @@ Users have the following rights regarding their data: ### Exercising Rights These rights can be exercised through: -- **DIDroom Control Room (Dashboard)** +- **DIDroom Dashboard (Dashboard)** - **Contacting Support** ## 6. International Data Transfers @@ -183,18 +188,18 @@ The DIDroom Wallet adheres to GDPR and California privacy laws. ------------ -## πŸ’» DIDroom Control Room (Dashboard) πŸ’» +## πŸ’» DIDroom Dashboard (Dashboard) πŸ’» **Last Updated:** [30.08.2024] ## 1. Introduction -This Privacy Policy explains how Forkbomb B.V. ("we", "our", "us") collects, uses, and protects your personal data when you use the DIDroom Control Room (Dashboard) ("the Dashboard"). By using the Dashboard, you agree to the collection and use of information in accordance with this policy. +This Privacy Policy explains how Forkbomb B.V. ("we", "our", "us") collects, uses, and protects your personal data when you use the DIDroom Dashboard (Dashboard) ("the Dashboard"). By using the Dashboard, you agree to the collection and use of information in accordance with this policy. ## 2. Data Collection ### Personal Data -The DIDroom Control Room (Dashboard) collects the following types of personal data: +The DIDroom Dashboard (Dashboard) collects the following types of personal data: - **Email Addresses** - **IP Addresses** - **Billing Information** @@ -205,7 +210,7 @@ Data is collected through: - **Invitations**: Users may invite others via email to join the Dashboard. ### Third-Party Data Collection -The DIDroom Control Room (Dashboard) does not collect data from third parties. +The DIDroom Dashboard (Dashboard) does not collect data from third parties. ## 3. Data Processing @@ -215,7 +220,7 @@ The collected data is used for the following purposes: - **Personalization** ### Automated Decision-Making -The DIDroom Control Room (Dashboard) does not use data for automated decision-making or profiling. +The DIDroom Dashboard (Dashboard) does not use data for automated decision-making or profiling. ### Data Sharing No data is shared with third parties. @@ -250,7 +255,7 @@ Currently, there is no identity verification process, but we plan to implement K ## 6. Cookies and Tracking ### Cookies and Analytics -The DIDroom Control Room (Dashboard) uses cookies and tracking technologies for analytics. We use Matomo, which is deployed on an on-premises server. +The DIDroom Dashboard (Dashboard) uses cookies and tracking technologies for analytics. We use Matomo, which is deployed on an on-premises server. ### Managing Cookies Users can manage or opt out of cookies through the "no-follow" option in their browser settings. @@ -263,7 +268,7 @@ No user data is transferred internationally. ## 8. Minors ### Age Restrictions -The DIDroom Control Room (Dashboard) is not intended for use by children due to its complexity. +The DIDroom Dashboard (Dashboard) is not intended for use by children due to its complexity. ### Parental Consent We do not obtain parental consent for minors' data collection. @@ -286,5 +291,5 @@ Email: info@forkbomb.eu ## 11. Compliance and Legal ### Industry Standards -The DIDroom Control Room (Dashboard) adheres to GDPR and California privacy laws. +The DIDroom Dashboard (Dashboard) adheres to GDPR and California privacy laws. diff --git a/docs/guides/3_verifier/index.md b/docs/guides/Verifier/index.md similarity index 62% rename from docs/guides/3_verifier/index.md rename to docs/guides/Verifier/index.md index 2582f1a..4353d8b 100755 --- a/docs/guides/3_verifier/index.md +++ b/docs/guides/Verifier/index.md @@ -1,5 +1,10 @@ -# βœ”οΈ Verifier App +--- +order: 20 +title: Verification Flow +--- + +# βœ”οΈ Verification Flow The [Verifier App ](https://github.com/ForkbombEu/verifier) is an Android/iOS mobile app whose purpose is to start a **Verification Flow**. -The Verifer App requires the user to have created an account (and ideally be part of an organization), so an account needs to be created on the [DIDroom Control Room](https://dashboard.didroom.com/) or in the Wallet. \ No newline at end of file +The Verifer App requires the user to have created an account (and ideally be part of an organization), so an account needs to be created on the [DIDroom Dashboard](https://dashboard.didroom.com/) or in the Wallet. \ No newline at end of file diff --git a/docs/guides/Verifier/join_org.md b/docs/guides/Verifier/join_org.md new file mode 100644 index 0000000..26f01ec --- /dev/null +++ b/docs/guides/Verifier/join_org.md @@ -0,0 +1,12 @@ +--- +title: Join Organization +order: 10 +--- + +# Create an account and join an organization + +In order to use the Verifier app and the Verification Flow, the user is supposed to: +1. have an account on [DIDroom Dashboard](https://dashboard.didroom.com/) +1. be part of an organization + +The Verifier only allows a user to login (with an existing account), meaning that an account has to be created on the [DIDroom Dashboard](https://dashboard.didroom.com/) or in the Wallet \ No newline at end of file diff --git a/docs/guides/3_verifier/2_verification_flow.md b/docs/guides/Verifier/verification_flow.md similarity index 86% rename from docs/guides/3_verifier/2_verification_flow.md rename to docs/guides/Verifier/verification_flow.md index daa13e8..692b0b0 100644 --- a/docs/guides/3_verifier/2_verification_flow.md +++ b/docs/guides/Verifier/verification_flow.md @@ -1,3 +1,8 @@ +--- +title: Start Verification +order: 20 +--- + # Start a Verification Flow After you logged in the Verifier, you will be presented with a list **Verification Flows**, you can run. The flows you see depend on the organization(s) you are member of. diff --git a/docs/guides/3_verifier/3_verify.md b/docs/guides/Verifier/verify.md similarity index 88% rename from docs/guides/3_verifier/3_verify.md rename to docs/guides/Verifier/verify.md index 2ed0c3a..fe23108 100644 --- a/docs/guides/3_verifier/3_verify.md +++ b/docs/guides/Verifier/verify.md @@ -1,3 +1,8 @@ +--- +title: Verification Success or Failure +order: 30 +--- + # Verification: Success or Failure The **Verification Flow** is active for some time, during this time a user holding a Wallet can scan the QR Code generated by the Verifier. Scanning the QR will trigger the credential presentation to the **Reying Party** (an external microservice that verifies the credential). diff --git a/docs/guides/wallet/3_get_credential.md b/docs/guides/Wallet/get_credential.md similarity index 84% rename from docs/guides/wallet/3_get_credential.md rename to docs/guides/Wallet/get_credential.md index 325b599..1e5e9ee 100644 --- a/docs/guides/wallet/3_get_credential.md +++ b/docs/guides/Wallet/get_credential.md @@ -1,9 +1,14 @@ +--- +title: Request Credential +order: 30 +--- + # Request a credential A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer. After you have created an account and logged in, you can request a credential in multiple ways: -- From the Wallet's home page: you can request all the credentials that have been created as "public" in the [DIDroom Control Room](https://dashboard.didroom.com/). +- From the Wallet's home page: you can request all the credentials that have been created as "public" in the [DIDroom Dashboard](https://dashboard.didroom.com/). - By scanning a QR-Code: you can re-quest a credential. The Wallet is compatible with the [OpenID4VCI](https://openid.net/specs/openid-4-verifiable-credential-issuance-1_0.html) standard, so you should be able to request (and receive) credentials also from Credential Issuers which are setup or connected to [DIDroom](https://dashboard.didroom.com/). # Your credentials diff --git a/docs/guides/wallet/index.md b/docs/guides/Wallet/index.md similarity index 83% rename from docs/guides/wallet/index.md rename to docs/guides/Wallet/index.md index 00069b2..86fc36e 100755 --- a/docs/guides/wallet/index.md +++ b/docs/guides/Wallet/index.md @@ -1,12 +1,12 @@ --- title: πŸ†” Wallet App -order: 1 +order: 10 --- # πŸ†” Wallet App The [Wallet App](https://github.com/ForkbombEu/wallet) is an Android/iOS mobile app whose purpose is to **request** and **present credentials**. -The Wallet App allows the user to creat an account and the same account can be used to login onto the [DIDroom Control Room](https://dashboard.didroom.com/). +The Wallet App allows the user to creat an account and the same account can be used to login onto the [DIDroom Dashboard](https://dashboard.didroom.com/). ## Features Once you login, you can: diff --git a/docs/guides/wallet/2_join_org.md b/docs/guides/Wallet/join_org.md similarity index 73% rename from docs/guides/wallet/2_join_org.md rename to docs/guides/Wallet/join_org.md index d0faf53..926b21f 100644 --- a/docs/guides/wallet/2_join_org.md +++ b/docs/guides/Wallet/join_org.md @@ -1,7 +1,12 @@ +--- +title: Join Organization +order: 20 +--- + # Join organization Ideally you'd want to join an organization after you created an account on the wallet. -Managing users in organization is happening in the [DIDroom Control Room](https://dashboard.didroom.com/), there are multiple ways to do that: +Managing users in organization is happening in the [DIDroom Dashboard](https://dashboard.didroom.com/), there are multiple ways to do that: - You can request to join an organization from *My organizations > Join an organization* - As organization manager you can invite a user to join, from the organization page, go to *Members > Add member* diff --git a/docs/guides/wallet/5_preferences.md b/docs/guides/Wallet/preferences.md similarity index 83% rename from docs/guides/wallet/5_preferences.md rename to docs/guides/Wallet/preferences.md index 8649983..634cca4 100644 --- a/docs/guides/wallet/5_preferences.md +++ b/docs/guides/Wallet/preferences.md @@ -1,3 +1,9 @@ +--- +title: Preferences +order: 50 +--- + + # Preference page In the *Preference* page of the Wallet App you can: diff --git a/docs/guides/wallet/4_present_credential.md b/docs/guides/Wallet/present_credential.md similarity index 95% rename from docs/guides/wallet/4_present_credential.md rename to docs/guides/Wallet/present_credential.md index 7a6aa74..4af883c 100644 --- a/docs/guides/wallet/4_present_credential.md +++ b/docs/guides/Wallet/present_credential.md @@ -1,3 +1,10 @@ +--- +title: Present Credential +order: 40 +--- + + + # Present a credential A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer. diff --git a/docs/guides/Wallet/sign-up.md b/docs/guides/Wallet/sign-up.md new file mode 100644 index 0000000..d6f5433 --- /dev/null +++ b/docs/guides/Wallet/sign-up.md @@ -0,0 +1,8 @@ +--- +title: Sign up +order: 10 +--- + +# Create a user account (or login) + +You can create an account in the Wallet, or you can login using an account that previously registered on the [DIDroom Dashboard](https://dashboard.didroom.com/). In both cases you'll need to generate your secret keys, using [Keypairoom](../6_components/generate_keys_keypairoom) \ No newline at end of file diff --git a/docs/guides/wallet/1_register.md b/docs/guides/wallet/1_register.md deleted file mode 100644 index b86bb4b..0000000 --- a/docs/guides/wallet/1_register.md +++ /dev/null @@ -1,3 +0,0 @@ -# Create a user account (or login) - -You can create an account in the Wallet, or you can login using an account that previously registered on the [DIDroom Control Room](https://dashboard.didroom.com/). In both cases you'll need to generate your secret keys, using [Keypairoom](../6_components/generate_keys_keypairoom) \ No newline at end of file diff --git a/docs/intro.md b/docs/intro.md index 9ae6300..b9d7521 100644 --- a/docs/intro.md +++ b/docs/intro.md @@ -1,3 +1,8 @@ +--- +title: πŸ“– Introduction +order: 10 +--- + # πŸ“– Introduction Welcome to Didroom – your gateway to decentralized identity management and secure communication. Didroom empowers individuals and organizations to take control of their digital identities while ensuring privacy and security. @@ -14,7 +19,7 @@ You can quickly test, plug and deploy by using our service at [dashboard.didroom Didroom offers a seamless and intuitive experience for managing decentralized identities and secure communication. Here's how it works: -- **Define services and credentials:** Via the Didroom Control Room, users can define services, credentials, and claims services according to their specific requirements. +- **Define services and credentials:** Via the DIDroom Dashboard, users can define services, credentials, and claims services according to their specific requirements. - **Generate Openid4VCI microservices:** Users can generate Openid4VCI microservices directly from the bloom using the Control Room, simplifying the process of creating and deploying identity verification services. @@ -59,7 +64,7 @@ these provide the foundational elements for identity management and cryptographi > [!NOTE] πŸ“‘ > For detailed description of each component please refer to [πŸ’‘ The Solution](/solution) -1. Didroom Control Room / Dashboard +1. DIDroom Dashboard / Dashboard 1. Didroom Microservices 1. Wallet Holder App 1. Verifier App diff --git a/docs/pr-preview/pr-14/404.html b/docs/pr-preview/pr-14/404.html index 8420729..9b6e1e2 100644 --- a/docs/pr-preview/pr-14/404.html +++ b/docs/pr-preview/pr-14/404.html @@ -17,7 +17,7 @@ -
Skip to content

🚫 Oops! Looks like the document you were hunting for is playing hide and seek with us! Don't worry, our crack team of digital detectives is on the case. πŸ•΅οΈβ€β™‚οΈπŸ” While they're hot on the trail, feel free to kick back, grab a snack, and try your search again in a bit. We promise it'll turn up sooner than you can say "404!" πŸ•°οΈπŸ”Ž

+
Skip to content

🚫 Oops! Looks like the document you were hunting for is playing hide and seek with us! Don't worry, our crack team of digital detectives is on the case. πŸ•΅οΈβ€β™‚οΈπŸ” While they're hot on the trail, feel free to kick back, grab a snack, and try your search again in a bit. We promise it'll turn up sooner than you can say "404!" πŸ•°οΈπŸ”Ž

diff --git a/docs/pr-preview/pr-14/aknowledgements.html b/docs/pr-preview/pr-14/aknowledgements.html index 9179592..d55b407 100644 --- a/docs/pr-preview/pr-14/aknowledgements.html +++ b/docs/pr-preview/pr-14/aknowledgements.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-14/assets/chunks/metadata.b29d1707.js b/docs/pr-preview/pr-14/assets/chunks/metadata.b29d1707.js index 04274a3..e5d993b 100644 --- a/docs/pr-preview/pr-14/assets/chunks/metadata.b29d1707.js +++ b/docs/pr-preview/pr-14/assets/chunks/metadata.b29d1707.js @@ -1 +1 @@ -window.__VP_HASH_MAP__=JSON.parse("{\"guides_4_sysadmin_setup.md\":\"BEbcAy0p\",\"guides_1_orgadmin_index.md\":\"DkIlQ0nG\",\"guides_4_sysadmin_deploy_microservices.md\":\"aHHLYmPx\",\"guides_3_verifier_2_verification_flow.md\":\"cKMSgt7m\",\"guides_index.md\":\"CqHRQzyz\",\"guides_5_components_index.md\":\"Cn-meg6u\",\"core-technologies.md\":\"DWAWia0p\",\"guides_4_sysadmin_index.md\":\"C0m7GzDl\",\"index.md\":\"OnP0Geud\",\"get_started.md\":\"7BKTuIak\",\"guides_1_orgadmin_issuance_flow.md\":\"CunN0yh9\",\"guides_4_sysadmin_setup_dashboard.md\":\"BuPdb8tr\",\"guides_1_orgadmin_credential_issuer.md\":\"DBvVgBq7\",\"guides_1_orgadmin_auth_server.md\":\"DeIs_CIv\",\"guides_5_components_keypairoom.md\":\"Ykbx3FWY\",\"guides_2_wallet_2_join_org.md\":\"BmYSPL7K\",\"intro.md\":\"C-Y17fUh\",\"guides_2_wallet_index.md\":\"BsDrvFah\",\"guides_3_verifier_index.md\":\"Tz8n2ga9\",\"guides_3_verifier_1_join_org.md\":\"B3IV46lt\",\"guides_3_verifier_3_verify.md\":\"C4KoUlMm\",\"guides_2_wallet_5_preferences.md\":\"gRslXkmm\",\"solution.md\":\"BkQPubXR\",\"guides_2_wallet_3_get_credential.md\":\"BwY_6bmq\",\"guides_1_orgadmin_create.md\":\"DGHrRMJV\",\"aknowledgements.md\":\"Cvb7seU1\",\"guides_2_wallet_4_present_credential.md\":\"CcXl3Qdt\",\"404.md\":\"B-lbBsu_\",\"guides_2_wallet_1_register.md\":\"CPPTl48Y\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"Didroom ecosystem\",\"description\":\"Empower your Identity strategy: customize, plug, deploy\",\"base\":\"/DIDroom/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Guide\",\"items\":[{\"text\":\"Organization admins\",\"link\":\"/guides/1_orgadmin/\"},{\"text\":\"Wallet App\",\"link\":\"/guides/2_wallet/\"},{\"text\":\"Verifier App\",\"link\":\"/guides/3_verifier/\"},{\"text\":\"System admins\",\"link\":\"/guides/4_sysadmin/\"}]},{\"text\":\"Get started\",\"link\":\"/get_started\"}],\"logo\":\"images/didroom_logo_emblem.svg\",\"sidebar\":[{\"text\":\"πŸ“– Introduction\",\"link\":\"/intro\"},{\"text\":\"πŸ—οΈ Core Technologies\",\"link\":\"/core-technologies\"},{\"text\":\"πŸ’‘ The Solution\",\"link\":\"/solution\"},{\"text\":\"🏁 Get started\",\"link\":\"/get_started\"},{\"text\":\"Guides\",\"link\":\"/guides/index.md\",\"items\":[{\"text\":\"πŸ‘©β€βš–οΈ DIDroom Control Room\",\"link\":\"/guides/1_orgadmin/index.md\",\"items\":[{\"text\":\"Setup an authorization server metadata\",\"link\":\"/guides/1_orgadmin/auth_server\"},{\"text\":\"Create an organization\",\"link\":\"/guides/1_orgadmin/create\"},{\"text\":\"Setup a credential issuer metadata\",\"link\":\"/guides/1_orgadmin/credential_issuer\"},{\"text\":\"Create a fully working credential issuing flow\",\"link\":\"/guides/1_orgadmin/issuance_flow\"}],\"collapsed\":false},{\"text\":\"πŸ†” Wallet App \",\"link\":\"/guides/2_wallet/index.md\",\"items\":[{\"text\":\"Create a user account (or login)\",\"link\":\"/guides/2_wallet/1_register\"},{\"text\":\"Join organization\",\"link\":\"/guides/2_wallet/2_join_org\"},{\"text\":\"Request a credential \",\"link\":\"/guides/2_wallet/3_get_credential\"},{\"text\":\"Present a credential\",\"link\":\"/guides/2_wallet/4_present_credential\"},{\"text\":\"Preference page\",\"link\":\"/guides/2_wallet/5_preferences\"}],\"collapsed\":false},{\"text\":\"βœ”οΈ Verifier App \",\"link\":\"/guides/3_verifier/index.md\",\"items\":[{\"text\":\"Create an account and join an organization\",\"link\":\"/guides/3_verifier/1_join_org\"},{\"text\":\"Start a Verification Flow\",\"link\":\"/guides/3_verifier/2_verification_flow\"},{\"text\":\"Verification: Success or Failure\",\"link\":\"/guides/3_verifier/3_verify\"}],\"collapsed\":false},{\"text\":\"πŸ› οΈ System Administrator\",\"link\":\"/guides/4_sysadmin/index.md\",\"items\":[{\"text\":\"Setup the Dashboard\",\"link\":\"/guides/4_sysadmin/setup\"},{\"text\":\"Self-Host the Dashboard\",\"link\":\"/guides/4_sysadmin/setup_dashboard\"},{\"text\":\"Deploy microservices\",\"link\":\"/guides/4_sysadmin/deploy_microservices\"}],\"collapsed\":false},{\"text\":\"πŸ“‘ Concepts/Components\",\"link\":\"/guides/5_components/index.md\",\"items\":[{\"text\":\"Keypairoom: (re)generate your secret keys\",\"link\":\"/guides/5_components/keypairoom\"}],\"collapsed\":false}],\"collapsed\":false},{\"text\":\"404\",\"link\":\"/404\"},{\"text\":\"🫢🏻 Aknowledgements\",\"link\":\"/aknowledgements\"}],\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/forkbombeu/didroom\"},{\"icon\":\"linkedin\",\"link\":\"https://linkedin.com/company/forkbomb\"}],\"footer\":{\"message\":\"Released under the AGPLv3 License.\",\"copyright\":\"Copyleft πŸ„― 2023-present The Forkbomb Company\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":false}"); \ No newline at end of file +window.__VP_HASH_MAP__=JSON.parse("{\"guides_4_sysadmin_setup.md\":\"BEbcAy0p\",\"guides_1_orgadmin_index.md\":\"DkIlQ0nG\",\"guides_4_sysadmin_deploy_microservices.md\":\"aHHLYmPx\",\"guides_3_verifier_2_verification_flow.md\":\"cKMSgt7m\",\"guides_index.md\":\"CqHRQzyz\",\"guides_5_components_index.md\":\"Cn-meg6u\",\"core-technologies.md\":\"DWAWia0p\",\"guides_4_sysadmin_index.md\":\"C0m7GzDl\",\"index.md\":\"OnP0Geud\",\"get_started.md\":\"7BKTuIak\",\"guides_1_orgadmin_issuance_flow.md\":\"CunN0yh9\",\"guides_4_sysadmin_setup_dashboard.md\":\"BuPdb8tr\",\"guides_1_orgadmin_credential_issuer.md\":\"DBvVgBq7\",\"guides_1_orgadmin_auth_server.md\":\"DeIs_CIv\",\"guides_5_components_keypairoom.md\":\"Ykbx3FWY\",\"guides_2_wallet_2_join_org.md\":\"BmYSPL7K\",\"intro.md\":\"C-Y17fUh\",\"guides_2_wallet_index.md\":\"BsDrvFah\",\"guides_3_verifier_index.md\":\"Tz8n2ga9\",\"guides_3_verifier_1_join_org.md\":\"B3IV46lt\",\"guides_3_verifier_3_verify.md\":\"C4KoUlMm\",\"guides_2_wallet_5_preferences.md\":\"gRslXkmm\",\"solution.md\":\"BkQPubXR\",\"guides_2_wallet_3_get_credential.md\":\"BwY_6bmq\",\"guides_1_orgadmin_create.md\":\"DGHrRMJV\",\"aknowledgements.md\":\"Cvb7seU1\",\"guides_2_wallet_4_present_credential.md\":\"CcXl3Qdt\",\"404.md\":\"B-lbBsu_\",\"guides_2_wallet_1_register.md\":\"CPPTl48Y\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"Didroom ecosystem\",\"description\":\"Empower your Identity strategy: customize, plug, deploy\",\"base\":\"/DIDroom/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Guide\",\"items\":[{\"text\":\"Organization admins\",\"link\":\"/guides/1_orgadmin/\"},{\"text\":\"Wallet App\",\"link\":\"/guides/2_wallet/\"},{\"text\":\"Verifier App\",\"link\":\"/guides/3_verifier/\"},{\"text\":\"System admins\",\"link\":\"/guides/4_sysadmin/\"}]},{\"text\":\"Get started\",\"link\":\"/get_started\"}],\"logo\":\"images/didroom_logo_emblem.svg\",\"sidebar\":[{\"text\":\"πŸ“– Introduction\",\"link\":\"/intro\"},{\"text\":\"πŸ—οΈ Core Technologies\",\"link\":\"/core-technologies\"},{\"text\":\"πŸ’‘ The Solution\",\"link\":\"/solution\"},{\"text\":\"🏁 Get started\",\"link\":\"/get_started\"},{\"text\":\"Guides\",\"link\":\"/guides/index.md\",\"items\":[{\"text\":\"πŸ‘©β€βš–οΈ DIDroom Dashboard\",\"link\":\"/guides/1_orgadmin/index.md\",\"items\":[{\"text\":\"Setup an authorization server metadata\",\"link\":\"/guides/1_orgadmin/auth_server\"},{\"text\":\"Create an organization\",\"link\":\"/guides/1_orgadmin/create\"},{\"text\":\"Setup a credential issuer metadata\",\"link\":\"/guides/1_orgadmin/credential_issuer\"},{\"text\":\"Create a fully working credential issuing flow\",\"link\":\"/guides/1_orgadmin/issuance_flow\"}],\"collapsed\":false},{\"text\":\"πŸ†” Wallet App \",\"link\":\"/guides/2_wallet/index.md\",\"items\":[{\"text\":\"Create a user account (or login)\",\"link\":\"/guides/2_wallet/1_register\"},{\"text\":\"Join organization\",\"link\":\"/guides/2_wallet/2_join_org\"},{\"text\":\"Request a credential \",\"link\":\"/guides/2_wallet/3_get_credential\"},{\"text\":\"Present a credential\",\"link\":\"/guides/2_wallet/4_present_credential\"},{\"text\":\"Preference page\",\"link\":\"/guides/2_wallet/5_preferences\"}],\"collapsed\":false},{\"text\":\"βœ”οΈ Verifier App \",\"link\":\"/guides/3_verifier/index.md\",\"items\":[{\"text\":\"Create an account and join an organization\",\"link\":\"/guides/3_verifier/1_join_org\"},{\"text\":\"Start a Verification Flow\",\"link\":\"/guides/3_verifier/2_verification_flow\"},{\"text\":\"Verification: Success or Failure\",\"link\":\"/guides/3_verifier/3_verify\"}],\"collapsed\":false},{\"text\":\"πŸ› οΈ System Administrator\",\"link\":\"/guides/4_sysadmin/index.md\",\"items\":[{\"text\":\"Setup the Dashboard\",\"link\":\"/guides/4_sysadmin/setup\"},{\"text\":\"Self-Host the Dashboard\",\"link\":\"/guides/4_sysadmin/setup_dashboard\"},{\"text\":\"Deploy microservices\",\"link\":\"/guides/4_sysadmin/deploy_microservices\"}],\"collapsed\":false},{\"text\":\"πŸ“‘ Concepts/Components\",\"link\":\"/guides/5_components/index.md\",\"items\":[{\"text\":\"Keypairoom: (re)generate your secret keys\",\"link\":\"/guides/5_components/keypairoom\"}],\"collapsed\":false}],\"collapsed\":false},{\"text\":\"404\",\"link\":\"/404\"},{\"text\":\"🫢🏻 Aknowledgements\",\"link\":\"/aknowledgements\"}],\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/forkbombeu/didroom\"},{\"icon\":\"linkedin\",\"link\":\"https://linkedin.com/company/forkbomb\"}],\"footer\":{\"message\":\"Released under the AGPLv3 License.\",\"copyright\":\"Copyleft πŸ„― 2023-present The Forkbomb Company\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":false}"); \ No newline at end of file diff --git a/docs/pr-preview/pr-14/assets/guides_1_orgadmin_index.md.DkIlQ0nG.js b/docs/pr-preview/pr-14/assets/guides_1_orgadmin_index.md.DkIlQ0nG.js index b786e65..1b37326 100644 --- a/docs/pr-preview/pr-14/assets/guides_1_orgadmin_index.md.DkIlQ0nG.js +++ b/docs/pr-preview/pr-14/assets/guides_1_orgadmin_index.md.DkIlQ0nG.js @@ -1 +1 @@ -import{_ as e,c as a,o,a3 as t}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"πŸ‘©β€βš–οΈ DIDroom Control Room","description":"","frontmatter":{},"headers":[],"relativePath":"guides/1_orgadmin/index.md","filePath":"guides/1_orgadmin/index.md","lastUpdated":1715167532000}'),r={name:"guides/1_orgadmin/index.md"},i=t('

πŸ‘©β€βš–οΈ DIDroom Control Room ​

Welcome, System Administrator! This guide provides step-by-step instructions for oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities.

Create an organization ​

Setup a credential issuer metadata ​

Setup an authorization server metadata ​

Create a fully working credential issuing flow ​

',10),n=[i];function s(d,c,l,u,m,h){return o(),a("div",null,n)}const f=e(r,[["render",s]]);export{g as __pageData,f as default}; +import{_ as e,c as a,o,a3 as t}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"πŸ‘©β€βš–οΈ DIDroom Dashboard","description":"","frontmatter":{},"headers":[],"relativePath":"guides/1_orgadmin/index.md","filePath":"guides/1_orgadmin/index.md","lastUpdated":1715167532000}'),r={name:"guides/1_orgadmin/index.md"},i=t('

πŸ‘©β€βš–οΈ DIDroom Dashboard ​

Welcome, System Administrator! This guide provides step-by-step instructions for oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities.

Create an organization ​

Setup a credential issuer metadata ​

Setup an authorization server metadata ​

Create a fully working credential issuing flow ​

',10),n=[i];function s(d,c,l,u,m,h){return o(),a("div",null,n)}const f=e(r,[["render",s]]);export{g as __pageData,f as default}; diff --git a/docs/pr-preview/pr-14/assets/guides_1_orgadmin_index.md.DkIlQ0nG.lean.js b/docs/pr-preview/pr-14/assets/guides_1_orgadmin_index.md.DkIlQ0nG.lean.js index 752b0cd..8f5f12b 100644 --- a/docs/pr-preview/pr-14/assets/guides_1_orgadmin_index.md.DkIlQ0nG.lean.js +++ b/docs/pr-preview/pr-14/assets/guides_1_orgadmin_index.md.DkIlQ0nG.lean.js @@ -1 +1 @@ -import{_ as e,c as a,o,a3 as t}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"πŸ‘©β€βš–οΈ DIDroom Control Room","description":"","frontmatter":{},"headers":[],"relativePath":"guides/1_orgadmin/index.md","filePath":"guides/1_orgadmin/index.md","lastUpdated":1715167532000}'),r={name:"guides/1_orgadmin/index.md"},i=t("",10),n=[i];function s(d,c,l,u,m,h){return o(),a("div",null,n)}const f=e(r,[["render",s]]);export{g as __pageData,f as default}; +import{_ as e,c as a,o,a3 as t}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"πŸ‘©β€βš–οΈ DIDroom Dashboard","description":"","frontmatter":{},"headers":[],"relativePath":"guides/1_orgadmin/index.md","filePath":"guides/1_orgadmin/index.md","lastUpdated":1715167532000}'),r={name:"guides/1_orgadmin/index.md"},i=t("",10),n=[i];function s(d,c,l,u,m,h){return o(),a("div",null,n)}const f=e(r,[["render",s]]);export{g as __pageData,f as default}; diff --git a/docs/pr-preview/pr-14/assets/guides_2_wallet_1_register.md.CPPTl48Y.js b/docs/pr-preview/pr-14/assets/guides_2_wallet_1_register.md.CPPTl48Y.js index 8f0cb99..8078add 100644 --- a/docs/pr-preview/pr-14/assets/guides_2_wallet_1_register.md.CPPTl48Y.js +++ b/docs/pr-preview/pr-14/assets/guides_2_wallet_1_register.md.CPPTl48Y.js @@ -1 +1 @@ -import{_ as a,c as o,o as r,m as e,a as t}from"./chunks/framework.CHPBlGxi.js";const f=JSON.parse('{"title":"Create a user account (or login)","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/1_register.md","filePath":"guides/2_wallet/1_register.md","lastUpdated":1715168429000}'),n={name:"guides/2_wallet/1_register.md"},s=e("h1",{id:"create-a-user-account-or-login",tabindex:"-1"},[t("Create a user account (or login) "),e("a",{class:"header-anchor",href:"#create-a-user-account-or-login","aria-label":'Permalink to "Create a user account (or login)"'},"​")],-1),c=e("p",null,[t("You can create an account in the Wallet, or you can login using an account that previously registered on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room"),t(". In both cases you'll need to generate your secret keys, using "),e("a",{href:"./../5_components/keypairoom.html"},"Keypairoom")],-1),i=[s,c];function l(d,u,_,h,g,m){return r(),o("div",null,i)}const y=a(n,[["render",l]]);export{f as __pageData,y as default}; +import{_ as a,c as o,o as r,m as e,a as t}from"./chunks/framework.CHPBlGxi.js";const f=JSON.parse('{"title":"Create a user account (or login)","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/1_register.md","filePath":"guides/2_wallet/1_register.md","lastUpdated":1715168429000}'),n={name:"guides/2_wallet/1_register.md"},s=e("h1",{id:"create-a-user-account-or-login",tabindex:"-1"},[t("Create a user account (or login) "),e("a",{class:"header-anchor",href:"#create-a-user-account-or-login","aria-label":'Permalink to "Create a user account (or login)"'},"​")],-1),c=e("p",null,[t("You can create an account in the Wallet, or you can login using an account that previously registered on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard"),t(". In both cases you'll need to generate your secret keys, using "),e("a",{href:"./../5_components/keypairoom.html"},"Keypairoom")],-1),i=[s,c];function l(d,u,_,h,g,m){return r(),o("div",null,i)}const y=a(n,[["render",l]]);export{f as __pageData,y as default}; diff --git a/docs/pr-preview/pr-14/assets/guides_2_wallet_1_register.md.CPPTl48Y.lean.js b/docs/pr-preview/pr-14/assets/guides_2_wallet_1_register.md.CPPTl48Y.lean.js index 8f0cb99..8078add 100644 --- a/docs/pr-preview/pr-14/assets/guides_2_wallet_1_register.md.CPPTl48Y.lean.js +++ b/docs/pr-preview/pr-14/assets/guides_2_wallet_1_register.md.CPPTl48Y.lean.js @@ -1 +1 @@ -import{_ as a,c as o,o as r,m as e,a as t}from"./chunks/framework.CHPBlGxi.js";const f=JSON.parse('{"title":"Create a user account (or login)","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/1_register.md","filePath":"guides/2_wallet/1_register.md","lastUpdated":1715168429000}'),n={name:"guides/2_wallet/1_register.md"},s=e("h1",{id:"create-a-user-account-or-login",tabindex:"-1"},[t("Create a user account (or login) "),e("a",{class:"header-anchor",href:"#create-a-user-account-or-login","aria-label":'Permalink to "Create a user account (or login)"'},"​")],-1),c=e("p",null,[t("You can create an account in the Wallet, or you can login using an account that previously registered on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room"),t(". In both cases you'll need to generate your secret keys, using "),e("a",{href:"./../5_components/keypairoom.html"},"Keypairoom")],-1),i=[s,c];function l(d,u,_,h,g,m){return r(),o("div",null,i)}const y=a(n,[["render",l]]);export{f as __pageData,y as default}; +import{_ as a,c as o,o as r,m as e,a as t}from"./chunks/framework.CHPBlGxi.js";const f=JSON.parse('{"title":"Create a user account (or login)","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/1_register.md","filePath":"guides/2_wallet/1_register.md","lastUpdated":1715168429000}'),n={name:"guides/2_wallet/1_register.md"},s=e("h1",{id:"create-a-user-account-or-login",tabindex:"-1"},[t("Create a user account (or login) "),e("a",{class:"header-anchor",href:"#create-a-user-account-or-login","aria-label":'Permalink to "Create a user account (or login)"'},"​")],-1),c=e("p",null,[t("You can create an account in the Wallet, or you can login using an account that previously registered on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard"),t(". In both cases you'll need to generate your secret keys, using "),e("a",{href:"./../5_components/keypairoom.html"},"Keypairoom")],-1),i=[s,c];function l(d,u,_,h,g,m){return r(),o("div",null,i)}const y=a(n,[["render",l]]);export{f as __pageData,y as default}; diff --git a/docs/pr-preview/pr-14/assets/guides_2_wallet_2_join_org.md.BmYSPL7K.js b/docs/pr-preview/pr-14/assets/guides_2_wallet_2_join_org.md.BmYSPL7K.js index bcbd28b..65609eb 100644 --- a/docs/pr-preview/pr-14/assets/guides_2_wallet_2_join_org.md.BmYSPL7K.js +++ b/docs/pr-preview/pr-14/assets/guides_2_wallet_2_join_org.md.BmYSPL7K.js @@ -1 +1 @@ -import{_ as a,c as o,o as e,a3 as n}from"./chunks/framework.CHPBlGxi.js";const u=JSON.parse('{"title":"Join organization","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/2_join_org.md","filePath":"guides/2_wallet/2_join_org.md","lastUpdated":1715167532000}'),t={name:"guides/2_wallet/2_join_org.md"},i=n('

Join organization ​

Ideally you'd want to join an organization after you created an account on the wallet. Managing users in organization is happening in the DIDroom Control Room, there are multiple ways to do that:

  • You can request to join an organization from My organizations > Join an organization
  • As organization manager you can invite a user to join, from the organization page, go to Members > Add member

Member of an organization ​

Once you have joined an organization you will see in your Wallet's home page, the list of the credentials that the organization is offering. Meaning that you can click on the credential's card to request it.

',5),r=[i];function l(s,_,d,g,c,h){return e(),o("div",null,r)}const f=a(t,[["render",l]]);export{u as __pageData,f as default}; +import{_ as a,c as o,o as e,a3 as n}from"./chunks/framework.CHPBlGxi.js";const u=JSON.parse('{"title":"Join organization","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/2_join_org.md","filePath":"guides/2_wallet/2_join_org.md","lastUpdated":1715167532000}'),t={name:"guides/2_wallet/2_join_org.md"},i=n('

Join organization ​

Ideally you'd want to join an organization after you created an account on the wallet. Managing users in organization is happening in the DIDroom Dashboard, there are multiple ways to do that:

  • You can request to join an organization from My organizations > Join an organization
  • As organization manager you can invite a user to join, from the organization page, go to Members > Add member

Member of an organization ​

Once you have joined an organization you will see in your Wallet's home page, the list of the credentials that the organization is offering. Meaning that you can click on the credential's card to request it.

',5),r=[i];function l(s,_,d,g,c,h){return e(),o("div",null,r)}const f=a(t,[["render",l]]);export{u as __pageData,f as default}; diff --git a/docs/pr-preview/pr-14/assets/guides_2_wallet_3_get_credential.md.BwY_6bmq.js b/docs/pr-preview/pr-14/assets/guides_2_wallet_3_get_credential.md.BwY_6bmq.js index 8287e9d..358b4d0 100644 --- a/docs/pr-preview/pr-14/assets/guides_2_wallet_3_get_credential.md.BwY_6bmq.js +++ b/docs/pr-preview/pr-14/assets/guides_2_wallet_3_get_credential.md.BwY_6bmq.js @@ -1 +1 @@ -import{_ as e,c as a,o as t,a3 as r}from"./chunks/framework.CHPBlGxi.js";const m=JSON.parse('{"title":"Request a credential","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/3_get_credential.md","filePath":"guides/2_wallet/3_get_credential.md","lastUpdated":1715167532000}'),o={name:"guides/2_wallet/3_get_credential.md"},n=r('

Request a credential ​

A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer.

After you have created an account and logged in, you can request a credential in multiple ways:

  • From the Wallet's home page: you can request all the credentials that have been created as "public" in the DIDroom Control Room.
  • By scanning a QR-Code: you can re-quest a credential. The Wallet is compatible with the OpenID4VCI standard, so you should be able to request (and receive) credentials also from Credential Issuers which are setup or connected to DIDroom.

Your credentials ​

You can browse the credentials you received in the Wallet page of the Wallet (D'Oh!), they will be listed as cards and show you the issuer that produced them, their expiry and descriptions.

',6),i=[n];function s(l,d,c,h,u,_){return t(),a("div",null,i)}const f=e(o,[["render",s]]);export{m as __pageData,f as default}; +import{_ as e,c as a,o as t,a3 as r}from"./chunks/framework.CHPBlGxi.js";const m=JSON.parse('{"title":"Request a credential","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/3_get_credential.md","filePath":"guides/2_wallet/3_get_credential.md","lastUpdated":1715167532000}'),o={name:"guides/2_wallet/3_get_credential.md"},n=r('

Request a credential ​

A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer.

After you have created an account and logged in, you can request a credential in multiple ways:

  • From the Wallet's home page: you can request all the credentials that have been created as "public" in the DIDroom Dashboard.
  • By scanning a QR-Code: you can re-quest a credential. The Wallet is compatible with the OpenID4VCI standard, so you should be able to request (and receive) credentials also from Credential Issuers which are setup or connected to DIDroom.

Your credentials ​

You can browse the credentials you received in the Wallet page of the Wallet (D'Oh!), they will be listed as cards and show you the issuer that produced them, their expiry and descriptions.

',6),i=[n];function s(l,d,c,h,u,_){return t(),a("div",null,i)}const f=e(o,[["render",s]]);export{m as __pageData,f as default}; diff --git a/docs/pr-preview/pr-14/assets/guides_2_wallet_index.md.BsDrvFah.js b/docs/pr-preview/pr-14/assets/guides_2_wallet_index.md.BsDrvFah.js index 4cd5072..0787a42 100644 --- a/docs/pr-preview/pr-14/assets/guides_2_wallet_index.md.BsDrvFah.js +++ b/docs/pr-preview/pr-14/assets/guides_2_wallet_index.md.BsDrvFah.js @@ -1 +1 @@ -import{_ as e,c as t,o as a,a3 as o}from"./chunks/framework.CHPBlGxi.js";const m=JSON.parse('{"title":"πŸ†” Wallet App","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/index.md","filePath":"guides/2_wallet/index.md","lastUpdated":1715167532000}'),r={name:"guides/2_wallet/index.md"},l=o('

πŸ†” Wallet App ​

The Wallet App is an Android/iOS mobile app whose purpose is to request and present credentials.

The Wallet App allows the user to creat an account and the same account can be used to login onto the DIDroom Control Room.

Features ​

Once you login, you can:

  • Select a credential to request, from the list you can see in the Wallet's home. The credentials that you see listed here, depend on what organization(s) your part of.
  • Scan a QR code to receive a credential
  • Scan a QR code (from the Verifier App) to present a credential.
',6),n=[l];function s(i,d,c,p,h,u){return a(),t("div",null,n)}const f=e(r,[["render",s]]);export{m as __pageData,f as default}; +import{_ as e,c as t,o as a,a3 as o}from"./chunks/framework.CHPBlGxi.js";const m=JSON.parse('{"title":"πŸ†” Wallet App","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/index.md","filePath":"guides/2_wallet/index.md","lastUpdated":1715167532000}'),r={name:"guides/2_wallet/index.md"},l=o('

πŸ†” Wallet App ​

The Wallet App is an Android/iOS mobile app whose purpose is to request and present credentials.

The Wallet App allows the user to creat an account and the same account can be used to login onto the DIDroom Dashboard.

Features ​

Once you login, you can:

  • Select a credential to request, from the list you can see in the Wallet's home. The credentials that you see listed here, depend on what organization(s) your part of.
  • Scan a QR code to receive a credential
  • Scan a QR code (from the Verifier App) to present a credential.
',6),n=[l];function s(i,d,c,p,h,u){return a(),t("div",null,n)}const f=e(r,[["render",s]]);export{m as __pageData,f as default}; diff --git a/docs/pr-preview/pr-14/assets/guides_3_verifier_1_join_org.md.B3IV46lt.js b/docs/pr-preview/pr-14/assets/guides_3_verifier_1_join_org.md.B3IV46lt.js index 29a471c..a2709a5 100644 --- a/docs/pr-preview/pr-14/assets/guides_3_verifier_1_join_org.md.B3IV46lt.js +++ b/docs/pr-preview/pr-14/assets/guides_3_verifier_1_join_org.md.B3IV46lt.js @@ -1 +1 @@ -import{_ as e,c as n,o as t,m as a,a as o}from"./chunks/framework.CHPBlGxi.js";const b=JSON.parse('{"title":"Create an account and join an organization","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/1_join_org.md","filePath":"guides/3_verifier/1_join_org.md","lastUpdated":1715167532000}'),r={name:"guides/3_verifier/1_join_org.md"},i=a("h1",{id:"create-an-account-and-join-an-organization",tabindex:"-1"},[o("Create an account and join an organization "),a("a",{class:"header-anchor",href:"#create-an-account-and-join-an-organization","aria-label":'Permalink to "Create an account and join an organization"'},"​")],-1),s=a("p",null,"In order to use the Verifier app and the Verification Flow, the user is supposed to:",-1),c=a("ol",null,[a("li",null,[o("have an account on "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room")]),a("li",null,"be part of an organization")],-1),d=a("p",null,[o("The Verifier only allows a user to login (with an existing account), meaning that an account has to be created on the "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room"),o(" or in the Wallet")],-1),l=[i,s,c,d];function _(h,u,p,f,m,g){return t(),n("div",null,l)}const v=e(r,[["render",_]]);export{b as __pageData,v as default}; +import{_ as e,c as n,o as t,m as a,a as o}from"./chunks/framework.CHPBlGxi.js";const b=JSON.parse('{"title":"Create an account and join an organization","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/1_join_org.md","filePath":"guides/3_verifier/1_join_org.md","lastUpdated":1715167532000}'),r={name:"guides/3_verifier/1_join_org.md"},i=a("h1",{id:"create-an-account-and-join-an-organization",tabindex:"-1"},[o("Create an account and join an organization "),a("a",{class:"header-anchor",href:"#create-an-account-and-join-an-organization","aria-label":'Permalink to "Create an account and join an organization"'},"​")],-1),s=a("p",null,"In order to use the Verifier app and the Verification Flow, the user is supposed to:",-1),c=a("ol",null,[a("li",null,[o("have an account on "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard")]),a("li",null,"be part of an organization")],-1),d=a("p",null,[o("The Verifier only allows a user to login (with an existing account), meaning that an account has to be created on the "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard"),o(" or in the Wallet")],-1),l=[i,s,c,d];function _(h,u,p,f,m,g){return t(),n("div",null,l)}const v=e(r,[["render",_]]);export{b as __pageData,v as default}; diff --git a/docs/pr-preview/pr-14/assets/guides_3_verifier_1_join_org.md.B3IV46lt.lean.js b/docs/pr-preview/pr-14/assets/guides_3_verifier_1_join_org.md.B3IV46lt.lean.js index 29a471c..a2709a5 100644 --- a/docs/pr-preview/pr-14/assets/guides_3_verifier_1_join_org.md.B3IV46lt.lean.js +++ b/docs/pr-preview/pr-14/assets/guides_3_verifier_1_join_org.md.B3IV46lt.lean.js @@ -1 +1 @@ -import{_ as e,c as n,o as t,m as a,a as o}from"./chunks/framework.CHPBlGxi.js";const b=JSON.parse('{"title":"Create an account and join an organization","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/1_join_org.md","filePath":"guides/3_verifier/1_join_org.md","lastUpdated":1715167532000}'),r={name:"guides/3_verifier/1_join_org.md"},i=a("h1",{id:"create-an-account-and-join-an-organization",tabindex:"-1"},[o("Create an account and join an organization "),a("a",{class:"header-anchor",href:"#create-an-account-and-join-an-organization","aria-label":'Permalink to "Create an account and join an organization"'},"​")],-1),s=a("p",null,"In order to use the Verifier app and the Verification Flow, the user is supposed to:",-1),c=a("ol",null,[a("li",null,[o("have an account on "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room")]),a("li",null,"be part of an organization")],-1),d=a("p",null,[o("The Verifier only allows a user to login (with an existing account), meaning that an account has to be created on the "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room"),o(" or in the Wallet")],-1),l=[i,s,c,d];function _(h,u,p,f,m,g){return t(),n("div",null,l)}const v=e(r,[["render",_]]);export{b as __pageData,v as default}; +import{_ as e,c as n,o as t,m as a,a as o}from"./chunks/framework.CHPBlGxi.js";const b=JSON.parse('{"title":"Create an account and join an organization","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/1_join_org.md","filePath":"guides/3_verifier/1_join_org.md","lastUpdated":1715167532000}'),r={name:"guides/3_verifier/1_join_org.md"},i=a("h1",{id:"create-an-account-and-join-an-organization",tabindex:"-1"},[o("Create an account and join an organization "),a("a",{class:"header-anchor",href:"#create-an-account-and-join-an-organization","aria-label":'Permalink to "Create an account and join an organization"'},"​")],-1),s=a("p",null,"In order to use the Verifier app and the Verification Flow, the user is supposed to:",-1),c=a("ol",null,[a("li",null,[o("have an account on "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard")]),a("li",null,"be part of an organization")],-1),d=a("p",null,[o("The Verifier only allows a user to login (with an existing account), meaning that an account has to be created on the "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard"),o(" or in the Wallet")],-1),l=[i,s,c,d];function _(h,u,p,f,m,g){return t(),n("div",null,l)}const v=e(r,[["render",_]]);export{b as __pageData,v as default}; diff --git a/docs/pr-preview/pr-14/assets/guides_3_verifier_index.md.Tz8n2ga9.js b/docs/pr-preview/pr-14/assets/guides_3_verifier_index.md.Tz8n2ga9.js index b54ef3d..9c67713 100644 --- a/docs/pr-preview/pr-14/assets/guides_3_verifier_index.md.Tz8n2ga9.js +++ b/docs/pr-preview/pr-14/assets/guides_3_verifier_index.md.Tz8n2ga9.js @@ -1 +1 @@ -import{_ as t,c as a,o,m as e,a as r}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"βœ”οΈ Verifier App","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/index.md","filePath":"guides/3_verifier/index.md","lastUpdated":1715167532000}'),i={name:"guides/3_verifier/index.md"},n=e("h1",{id:"βœ”οΈ-verifier-app",tabindex:"-1"},[r("βœ”οΈ Verifier App "),e("a",{class:"header-anchor",href:"#βœ”οΈ-verifier-app","aria-label":'Permalink to "βœ”οΈ Verifier App"'},"​")],-1),s=e("p",null,[r("The "),e("a",{href:"https://github.com/ForkbombEu/verifier",target:"_blank",rel:"noreferrer"},"Verifier App "),r(" is an Android/iOS mobile app whose purpose is to start a "),e("strong",null,"Verification Flow"),r(".")],-1),d=e("p",null,[r("The Verifer App requires the user to have created an account (and ideally be part of an organization), so an account needs to be created on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room"),r(" or in the Wallet.")],-1),p=[n,s,d];function c(l,f,h,_,m,u){return o(),a("div",null,p)}const v=t(i,[["render",c]]);export{g as __pageData,v as default}; +import{_ as t,c as a,o,m as e,a as r}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"βœ”οΈ Verifier App","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/index.md","filePath":"guides/3_verifier/index.md","lastUpdated":1715167532000}'),i={name:"guides/3_verifier/index.md"},n=e("h1",{id:"βœ”οΈ-verifier-app",tabindex:"-1"},[r("βœ”οΈ Verifier App "),e("a",{class:"header-anchor",href:"#βœ”οΈ-verifier-app","aria-label":'Permalink to "βœ”οΈ Verifier App"'},"​")],-1),s=e("p",null,[r("The "),e("a",{href:"https://github.com/ForkbombEu/verifier",target:"_blank",rel:"noreferrer"},"Verifier App "),r(" is an Android/iOS mobile app whose purpose is to start a "),e("strong",null,"Verification Flow"),r(".")],-1),d=e("p",null,[r("The Verifer App requires the user to have created an account (and ideally be part of an organization), so an account needs to be created on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard"),r(" or in the Wallet.")],-1),p=[n,s,d];function c(l,f,h,_,m,u){return o(),a("div",null,p)}const v=t(i,[["render",c]]);export{g as __pageData,v as default}; diff --git a/docs/pr-preview/pr-14/assets/guides_3_verifier_index.md.Tz8n2ga9.lean.js b/docs/pr-preview/pr-14/assets/guides_3_verifier_index.md.Tz8n2ga9.lean.js index b54ef3d..9c67713 100644 --- a/docs/pr-preview/pr-14/assets/guides_3_verifier_index.md.Tz8n2ga9.lean.js +++ b/docs/pr-preview/pr-14/assets/guides_3_verifier_index.md.Tz8n2ga9.lean.js @@ -1 +1 @@ -import{_ as t,c as a,o,m as e,a as r}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"βœ”οΈ Verifier App","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/index.md","filePath":"guides/3_verifier/index.md","lastUpdated":1715167532000}'),i={name:"guides/3_verifier/index.md"},n=e("h1",{id:"βœ”οΈ-verifier-app",tabindex:"-1"},[r("βœ”οΈ Verifier App "),e("a",{class:"header-anchor",href:"#βœ”οΈ-verifier-app","aria-label":'Permalink to "βœ”οΈ Verifier App"'},"​")],-1),s=e("p",null,[r("The "),e("a",{href:"https://github.com/ForkbombEu/verifier",target:"_blank",rel:"noreferrer"},"Verifier App "),r(" is an Android/iOS mobile app whose purpose is to start a "),e("strong",null,"Verification Flow"),r(".")],-1),d=e("p",null,[r("The Verifer App requires the user to have created an account (and ideally be part of an organization), so an account needs to be created on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room"),r(" or in the Wallet.")],-1),p=[n,s,d];function c(l,f,h,_,m,u){return o(),a("div",null,p)}const v=t(i,[["render",c]]);export{g as __pageData,v as default}; +import{_ as t,c as a,o,m as e,a as r}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"βœ”οΈ Verifier App","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/index.md","filePath":"guides/3_verifier/index.md","lastUpdated":1715167532000}'),i={name:"guides/3_verifier/index.md"},n=e("h1",{id:"βœ”οΈ-verifier-app",tabindex:"-1"},[r("βœ”οΈ Verifier App "),e("a",{class:"header-anchor",href:"#βœ”οΈ-verifier-app","aria-label":'Permalink to "βœ”οΈ Verifier App"'},"​")],-1),s=e("p",null,[r("The "),e("a",{href:"https://github.com/ForkbombEu/verifier",target:"_blank",rel:"noreferrer"},"Verifier App "),r(" is an Android/iOS mobile app whose purpose is to start a "),e("strong",null,"Verification Flow"),r(".")],-1),d=e("p",null,[r("The Verifer App requires the user to have created an account (and ideally be part of an organization), so an account needs to be created on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard"),r(" or in the Wallet.")],-1),p=[n,s,d];function c(l,f,h,_,m,u){return o(),a("div",null,p)}const v=t(i,[["render",c]]);export{g as __pageData,v as default}; diff --git a/docs/pr-preview/pr-14/assets/guides_4_sysadmin_setup.md.BEbcAy0p.js b/docs/pr-preview/pr-14/assets/guides_4_sysadmin_setup.md.BEbcAy0p.js index 0e58c39..aefabeb 100644 --- a/docs/pr-preview/pr-14/assets/guides_4_sysadmin_setup.md.BEbcAy0p.js +++ b/docs/pr-preview/pr-14/assets/guides_4_sysadmin_setup.md.BEbcAy0p.js @@ -1,2 +1,2 @@ -import{_ as e,c as o,o as a,a3 as t}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"Setup the Dashboard","description":"","frontmatter":{},"headers":[],"relativePath":"guides/4_sysadmin/setup.md","filePath":"guides/4_sysadmin/setup.md","lastUpdated":1715168429000}'),s={name:"guides/4_sysadmin/setup.md"},i=t(`

Setup the Dashboard ​

for πŸ› οΈ System Administrator ​

For users who prefer full control over their infrastructure and data, Didroom supports on-premise deployment. Follow these steps to deploy the DIDroom Dashboard on your own infrastructure:

TIP

If you are unfamiliar with servers, devops and unix commands look also at the Software as a service section that will allow you to define a credential issuance flow in minutes! Without installing anything on your servers.

Checklist

Before starting please make sure you have a

  1. Git installed on your server
  2. Docker compose installed on your server
  3. DID admin domain/context as specified on dyne/W3C-DID

1. clone the repo ​

bash
git clone --recursive https://github.com/forkbombeu/signroom

WARNING

Pay attention at the --recursive that will clone also the sub repositories!

2. Run the Dashboard (Admin Panel and DIDroom Control Room) ​

bash
cd signroom
-docker compose up --build

This will run the DIDroom Dashboard which includes two interconnected web-applications:

  • Admin Panel: based on PocketBase, this application is accessible only to the sysadmin and it allows to configure and edit data structure and API configurations.
  • DIDroom Control Room: this the DIDroom web application accessible to all users, allows to manage credential issuance and verification flows and their deployment and the organizations

The two web applications run on two different ports and have different user accounts.

3. Log in onto the DIDroom Control Room ​

Go to:

http
http://localhost:4173/

Register a new uer or log in using the default user:

user: userA@example.org

pass: userAuserA

4. login onto to the Admin Panel ​

Go to:

http
http://localhost:8090/_

TIP

Pay attention at the final underscore, of the address

A default administrator user is created with the following user and pass:

user: admin@example.org

pass: adminadmin

5. Setup the DID service ​

DIDroom uses the Dyne's DID service as a public key infrastructure. You can choose to ask us (Forkbomb or Dyne.org) to provide you the admin data, or deploy Dyne's DID service on your server.

You can ask for your admin domain/context as specified on dyne/W3C-DID

Follow the video:

  1. login into the dashboard
  2. go on the features collection
  3. select the DID feature
  4. insert you admin data
`,33),n=[i];function r(l,d,h,p,c,u){return a(),o("div",null,n)}const b=e(s,[["render",r]]);export{g as __pageData,b as default}; +import{_ as e,c as o,o as a,a3 as t}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"Setup the Dashboard","description":"","frontmatter":{},"headers":[],"relativePath":"guides/4_sysadmin/setup.md","filePath":"guides/4_sysadmin/setup.md","lastUpdated":1715168429000}'),s={name:"guides/4_sysadmin/setup.md"},i=t(`

Setup the Dashboard ​

for πŸ› οΈ System Administrator ​

For users who prefer full control over their infrastructure and data, Didroom supports on-premise deployment. Follow these steps to deploy the DIDroom Dashboard on your own infrastructure:

TIP

If you are unfamiliar with servers, devops and unix commands look also at the Software as a service section that will allow you to define a credential issuance flow in minutes! Without installing anything on your servers.

Checklist

Before starting please make sure you have a

  1. Git installed on your server
  2. Docker compose installed on your server
  3. DID admin domain/context as specified on dyne/W3C-DID

1. clone the repo ​

bash
git clone --recursive https://github.com/forkbombeu/signroom

WARNING

Pay attention at the --recursive that will clone also the sub repositories!

2. Run the Dashboard (Admin Panel and DIDroom Dashboard) ​

bash
cd signroom
+docker compose up --build

This will run the DIDroom Dashboard which includes two interconnected web-applications:

  • Admin Panel: based on PocketBase, this application is accessible only to the sysadmin and it allows to configure and edit data structure and API configurations.
  • DIDroom Dashboard: this the DIDroom web application accessible to all users, allows to manage credential issuance and verification flows and their deployment and the organizations

The two web applications run on two different ports and have different user accounts.

3. Log in onto the DIDroom Dashboard ​

Go to:

http
http://localhost:4173/

Register a new uer or log in using the default user:

user: userA@example.org

pass: userAuserA

4. login onto to the Admin Panel ​

Go to:

http
http://localhost:8090/_

TIP

Pay attention at the final underscore, of the address

A default administrator user is created with the following user and pass:

user: admin@example.org

pass: adminadmin

5. Setup the DID service ​

DIDroom uses the Dyne's DID service as a public key infrastructure. You can choose to ask us (Forkbomb or Dyne.org) to provide you the admin data, or deploy Dyne's DID service on your server.

You can ask for your admin domain/context as specified on dyne/W3C-DID

Follow the video:

  1. login into the dashboard
  2. go on the features collection
  3. select the DID feature
  4. insert you admin data
`,33),n=[i];function r(l,d,h,p,c,u){return a(),o("div",null,n)}const b=e(s,[["render",r]]);export{g as __pageData,b as default}; diff --git a/docs/pr-preview/pr-14/assets/guides_5_components_keypairoom.md.Ykbx3FWY.js b/docs/pr-preview/pr-14/assets/guides_5_components_keypairoom.md.Ykbx3FWY.js index 902fbbf..da69442 100644 --- a/docs/pr-preview/pr-14/assets/guides_5_components_keypairoom.md.Ykbx3FWY.js +++ b/docs/pr-preview/pr-14/assets/guides_5_components_keypairoom.md.Ykbx3FWY.js @@ -1 +1 @@ -import{_ as e,c as t,o,a3 as r}from"./chunks/framework.CHPBlGxi.js";const y=JSON.parse('{"title":"Keypairoom: (re)generate your secret keys","description":"","frontmatter":{},"headers":[],"relativePath":"guides/5_components/keypairoom.md","filePath":"guides/5_components/keypairoom.md","lastUpdated":1715167532000}'),a={name:"guides/5_components/keypairoom.md"},s=r('

Keypairoom: (re)generate your secret keys ​

Keypairoom is component to generate and regenerate a keyring, containing multiple secret keys (along with the correspondet public keys) in a deterministic and private way.

The cryptographic part consists of multiple Zenroom scripts that allows you to generate a seed by answering to questions that (probably) only you can respond, namely "The challenges".

Privacy ​

The challenges are processed inside the client applications (the Wallet App or the browser where you opened the DIDroom Control Room. Note:

  • The Zenroom scripts processing the answers work offline.
  • Your answers are never communicated to any external service.
  • No one can reconstruct them based on their output: this is certain based on the math behind it, if you're curious you can read about it here.
  • The answers are not used to identify you in anyway, they are just some text that only you can write and belong to your past, so it should not change over time.

More about privacy ​

We hear you saying:

I don't want to answer any question I don't trust writing my personal data anywhere... what now?

So you don't want to write private data anywhere, cause you don't trust software security ever? We (the developers) understand you well and share your feelings πŸ˜ƒ

TLDR: answer using random text and save the seed!

If that's the case, no problem at all: you can just answer to the challenges with some random/junk text. After your secret keys are created, you are offered to store the seed: the seed is a piece of data, printed as a mnemonic phrase that will allow you to re-generate the same secret keys at any time.

What does a mmnemonic phrase look like? Like this:

mnemonic
expect cart barely fruit learn tortoise work essence guitar

If you log out from the wallet, or try to login onto a new device (or browser), you are given the option to paste your seed: therefore store your seed in a safe place, it will work forever, no matter what you answered in that challenges.

',15),n=[s];function i(l,c,p,h,u,d){return o(),t("div",null,n)}const g=e(a,[["render",i]]);export{y as __pageData,g as default}; +import{_ as e,c as t,o,a3 as r}from"./chunks/framework.CHPBlGxi.js";const y=JSON.parse('{"title":"Keypairoom: (re)generate your secret keys","description":"","frontmatter":{},"headers":[],"relativePath":"guides/5_components/keypairoom.md","filePath":"guides/5_components/keypairoom.md","lastUpdated":1715167532000}'),a={name:"guides/5_components/keypairoom.md"},s=r('

Keypairoom: (re)generate your secret keys ​

Keypairoom is component to generate and regenerate a keyring, containing multiple secret keys (along with the correspondet public keys) in a deterministic and private way.

The cryptographic part consists of multiple Zenroom scripts that allows you to generate a seed by answering to questions that (probably) only you can respond, namely "The challenges".

Privacy ​

The challenges are processed inside the client applications (the Wallet App or the browser where you opened the DIDroom Dashboard. Note:

  • The Zenroom scripts processing the answers work offline.
  • Your answers are never communicated to any external service.
  • No one can reconstruct them based on their output: this is certain based on the math behind it, if you're curious you can read about it here.
  • The answers are not used to identify you in anyway, they are just some text that only you can write and belong to your past, so it should not change over time.

More about privacy ​

We hear you saying:

I don't want to answer any question I don't trust writing my personal data anywhere... what now?

So you don't want to write private data anywhere, cause you don't trust software security ever? We (the developers) understand you well and share your feelings πŸ˜ƒ

TLDR: answer using random text and save the seed!

If that's the case, no problem at all: you can just answer to the challenges with some random/junk text. After your secret keys are created, you are offered to store the seed: the seed is a piece of data, printed as a mnemonic phrase that will allow you to re-generate the same secret keys at any time.

What does a mmnemonic phrase look like? Like this:

mnemonic
expect cart barely fruit learn tortoise work essence guitar

If you log out from the wallet, or try to login onto a new device (or browser), you are given the option to paste your seed: therefore store your seed in a safe place, it will work forever, no matter what you answered in that challenges.

',15),n=[s];function i(l,c,p,h,u,d){return o(),t("div",null,n)}const g=e(a,[["render",i]]);export{y as __pageData,g as default}; diff --git a/docs/pr-preview/pr-14/assets/intro.md.C-Y17fUh.js b/docs/pr-preview/pr-14/assets/intro.md.C-Y17fUh.js index f0bde25..3ab2b70 100644 --- a/docs/pr-preview/pr-14/assets/intro.md.C-Y17fUh.js +++ b/docs/pr-preview/pr-14/assets/intro.md.C-Y17fUh.js @@ -1 +1 @@ -import{_ as e,c as i,o as t,a3 as o}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"πŸ“– Introduction","description":"","frontmatter":{},"headers":[],"relativePath":"intro.md","filePath":"intro.md","lastUpdated":1713910977000}'),r={name:"intro.md"},n=o('

πŸ“– Introduction ​

Welcome to Didroom – your gateway to decentralized identity management and secure communication. Didroom empowers individuals and organizations to take control of their digital identities while ensuring privacy and security. Whether you're looking to streamline identity verification processes, enhance data security, or enable secure communication channels, Didroom provides the tools and infrastructure you need.

You can quickly test, plug and deploy by using our service at dashboard.didroom.com or install the whole ecosystem on-premise on your infrastructure. For detailed instructions please refer to the Get started guide.

How It Works ​

Didroom offers a seamless and intuitive experience for managing decentralized identities and secure communication. Here's how it works:

  • Define services and credentials: Via the Didroom Control Room, users can define services, credentials, and claims services according to their specific requirements.

  • Generate Openid4VCI microservices: Users can generate Openid4VCI microservices directly from the bloom using the Control Room, simplifying the process of creating and deploying identity verification services.

  • Plug custom business logic: Didroom allows users to add custom business logic to their applications, tailoring the functionality to meet their unique needs and requirements.

  • Integrate pre-existing microservices: Users can seamlessly integrate their microservices into their existing systems or applications, enhancing functionality and interoperability.

  • Deploy and control microservices nodes: Didroom enables users to deploy and control microservices nodes directly from the Control Room, streamlining the deployment and management process.

  • Enhance your business logic with natural language smart contracts (Zencode): With Didroom, users can enhance their business logic with natural English smart contracts, enabling advanced automation and decision-making capabilities.

  • Whitelabel wallet and verifier apps: To interact with your services individuals need a wallet app that we provide for whitelabeling. Same a verifier app for indivisuals that want to verify credentials.

Features ​

  • Compliance: Didroom is compliant with industry standards and regulations, including EUDI-ARF, ensuring adherence to data protection laws and regulations.
  • End-to-End encryption: Secure communication is facilitated through end-to-end encryption, ensuring that messages and data remain private and confidential.
  • Decentralized identity management: Didroom enables users to create, control, and manage their digital identities in a decentralized manner, eliminating reliance on central authorities.
  • Customizable and extensible: Didroom is highly customizable and extensible, allowing organizations to tailor the platform to their specific needs and integrate with existing systems seamlessly.

Integration and flexibility ​

Didroom is designed to be seamlessly integrated into third-party solutions and environments. Its modular architecture allows for easy integration with existing microservices or other identity management systems. Whether you need to use Didroom as a standalone solution or integrate it into your existing infrastructure, Didroom provides the flexibility and adaptability you need.

Architectural overview ​

The Didroom ecosystem consists of a modular architecture comprising core technologies and components

  1. Zenroom
  2. Slangroom
  3. No-code-room
  4. Dyne.org Decentralized Identifiers (DID) Service

these provide the foundational elements for identity management and cryptographic operations.

  • Components:

πŸ“‘

For detailed description of each component please refer to πŸ’‘ The Solution

  1. Didroom Control Room / Dashboard
  2. Didroom Microservices
  3. Wallet Holder App
  4. Verifier App

there offer user interfaces and functionalities for managing identities, communication, and verification.

Let's start! ​

Sure, let's 🏁 Get started!

',21),a=[n];function s(l,c,d,m,u,h){return t(),i("div",null,a)}const f=e(r,[["render",s]]);export{g as __pageData,f as default}; +import{_ as e,c as i,o as t,a3 as o}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"πŸ“– Introduction","description":"","frontmatter":{},"headers":[],"relativePath":"intro.md","filePath":"intro.md","lastUpdated":1713910977000}'),r={name:"intro.md"},n=o('

πŸ“– Introduction ​

Welcome to Didroom – your gateway to decentralized identity management and secure communication. Didroom empowers individuals and organizations to take control of their digital identities while ensuring privacy and security. Whether you're looking to streamline identity verification processes, enhance data security, or enable secure communication channels, Didroom provides the tools and infrastructure you need.

You can quickly test, plug and deploy by using our service at dashboard.didroom.com or install the whole ecosystem on-premise on your infrastructure. For detailed instructions please refer to the Get started guide.

How It Works ​

Didroom offers a seamless and intuitive experience for managing decentralized identities and secure communication. Here's how it works:

  • Define services and credentials: Via the DIDroom Dashboard, users can define services, credentials, and claims services according to their specific requirements.

  • Generate Openid4VCI microservices: Users can generate Openid4VCI microservices directly from the bloom using the Control Room, simplifying the process of creating and deploying identity verification services.

  • Plug custom business logic: Didroom allows users to add custom business logic to their applications, tailoring the functionality to meet their unique needs and requirements.

  • Integrate pre-existing microservices: Users can seamlessly integrate their microservices into their existing systems or applications, enhancing functionality and interoperability.

  • Deploy and control microservices nodes: Didroom enables users to deploy and control microservices nodes directly from the Control Room, streamlining the deployment and management process.

  • Enhance your business logic with natural language smart contracts (Zencode): With Didroom, users can enhance their business logic with natural English smart contracts, enabling advanced automation and decision-making capabilities.

  • Whitelabel wallet and verifier apps: To interact with your services individuals need a wallet app that we provide for whitelabeling. Same a verifier app for indivisuals that want to verify credentials.

Features ​

  • Compliance: Didroom is compliant with industry standards and regulations, including EUDI-ARF, ensuring adherence to data protection laws and regulations.
  • End-to-End encryption: Secure communication is facilitated through end-to-end encryption, ensuring that messages and data remain private and confidential.
  • Decentralized identity management: Didroom enables users to create, control, and manage their digital identities in a decentralized manner, eliminating reliance on central authorities.
  • Customizable and extensible: Didroom is highly customizable and extensible, allowing organizations to tailor the platform to their specific needs and integrate with existing systems seamlessly.

Integration and flexibility ​

Didroom is designed to be seamlessly integrated into third-party solutions and environments. Its modular architecture allows for easy integration with existing microservices or other identity management systems. Whether you need to use Didroom as a standalone solution or integrate it into your existing infrastructure, Didroom provides the flexibility and adaptability you need.

Architectural overview ​

The Didroom ecosystem consists of a modular architecture comprising core technologies and components

  1. Zenroom
  2. Slangroom
  3. No-code-room
  4. Dyne.org Decentralized Identifiers (DID) Service

these provide the foundational elements for identity management and cryptographic operations.

  • Components:

πŸ“‘

For detailed description of each component please refer to πŸ’‘ The Solution

  1. DIDroom Dashboard / Dashboard
  2. Didroom Microservices
  3. Wallet Holder App
  4. Verifier App

there offer user interfaces and functionalities for managing identities, communication, and verification.

Let's start! ​

Sure, let's 🏁 Get started!

',21),a=[n];function s(l,c,d,m,u,h){return t(),i("div",null,a)}const f=e(r,[["render",s]]);export{g as __pageData,f as default}; diff --git a/docs/pr-preview/pr-14/assets/solution.md.BkQPubXR.js b/docs/pr-preview/pr-14/assets/solution.md.BkQPubXR.js index e5dd29d..7eb9352 100644 --- a/docs/pr-preview/pr-14/assets/solution.md.BkQPubXR.js +++ b/docs/pr-preview/pr-14/assets/solution.md.BkQPubXR.js @@ -1 +1 @@ -import{_ as e,c as o,o as t,a3 as i}from"./chunks/framework.CHPBlGxi.js";const b=JSON.parse('{"title":"πŸ’‘ The Solution","description":"","frontmatter":{},"headers":[],"relativePath":"solution.md","filePath":"solution.md","lastUpdated":1713910977000}'),r={name:"solution.md"},a=i('

πŸ’‘ The Solution ​

Our solution is divided into different repositories, each focusing on a specific component. This modular approach allows us to maintain flexibility and scalability, enabling users to customize and integrate the solution according to their specific needs and requirements.

DIDroom Control Room (Dashboard) ​

The DIDroom Control Room/Dashboard serves as the central hub for managing decentralized identity solutions. It provides a user-friendly interface for configuring settings, monitoring performance, and accessing key functionalities.

The core features of the Control Room are:

  • Creation of credential issuance and verification flows
  • Deployment and provisioning of the DIDroom Microservices
  • Creation of organizations, assigning of privileges to different users
  • The admin panel of the Control Room offers:
    • User management
    • Setup of web-hooks and automation flows
    • Customization of the Control Room menu entries

DIDroom Mobile libs (Mobile Zencode) ​

A collection of mobile library, Zencode Mobile holds all the business logic and contracts shared between the different components of the DIDroom Solution. It serves as a centralized repository for managing and updating the core business logic used across various mobile applications and components.

RESOURCES

GitHub

DIDroom microservices ​

Those are the technological core of the solution: those components offer cryptographic functions as well as transport protocols. The microservices are completely isolated from the Dashboard, meaning that:

  • The code is hosted in a separated repo
  • The microservices can run independently from the Dashboard
  • Each microservice has its own secret keys and DID to identify them: those are generated by the microservice at its first provisioning

DIDroom microservices are generated using No-code-room (NCR) and utilize the Zencode Mobile repository to create three different microservices:

  • Credential Issuers: These microservices are compliant with Openid4VCI standards and handle the issuance of credentials.
  • Authorization Servers: These microservices implement OAuth2 and work seamlessly with our DID Service for authentication and authorization.
  • Relying Party: These microservices are compliant with Openid4VP standards and act as relying parties for authentication and authorization.

RESOURCES

GitHub

Wallet Holder App ​

The Wallet Holder App offers a secure and user-friendly interface for managing decentralized identities and digital credentials. It allows users to store, view, and share their identity information with ease inside a TEE (Trusted execution environment) directly on citizens devices.

Verifier App ​

The Verifier App provides tools for verifying the authenticity and validity of decentralized identities and digital credentials. It enables organizations to validate identity claims and ensure compliance with regulatory requirements.

DIDroom web components ​

DIDroom Web Components hold all the UI web components used across all the projects to ensure a coherent Atomic design and allow for white-labeling.

',25),s=[a];function n(l,c,d,h,m,p){return t(),o("div",null,s)}const f=e(r,[["render",n]]);export{b as __pageData,f as default}; +import{_ as e,c as o,o as t,a3 as i}from"./chunks/framework.CHPBlGxi.js";const b=JSON.parse('{"title":"πŸ’‘ The Solution","description":"","frontmatter":{},"headers":[],"relativePath":"solution.md","filePath":"solution.md","lastUpdated":1713910977000}'),r={name:"solution.md"},a=i('

πŸ’‘ The Solution ​

Our solution is divided into different repositories, each focusing on a specific component. This modular approach allows us to maintain flexibility and scalability, enabling users to customize and integrate the solution according to their specific needs and requirements.

DIDroom Dashboard (Dashboard) ​

The DIDroom Dashboard/Dashboard serves as the central hub for managing decentralized identity solutions. It provides a user-friendly interface for configuring settings, monitoring performance, and accessing key functionalities.

The core features of the Control Room are:

  • Creation of credential issuance and verification flows
  • Deployment and provisioning of the DIDroom Microservices
  • Creation of organizations, assigning of privileges to different users
  • The admin panel of the Control Room offers:
    • User management
    • Setup of web-hooks and automation flows
    • Customization of the Control Room menu entries

DIDroom Mobile libs (Mobile Zencode) ​

A collection of mobile library, Zencode Mobile holds all the business logic and contracts shared between the different components of the DIDroom Solution. It serves as a centralized repository for managing and updating the core business logic used across various mobile applications and components.

RESOURCES

GitHub

DIDroom microservices ​

Those are the technological core of the solution: those components offer cryptographic functions as well as transport protocols. The microservices are completely isolated from the Dashboard, meaning that:

  • The code is hosted in a separated repo
  • The microservices can run independently from the Dashboard
  • Each microservice has its own secret keys and DID to identify them: those are generated by the microservice at its first provisioning

DIDroom microservices are generated using No-code-room (NCR) and utilize the Zencode Mobile repository to create three different microservices:

  • Credential Issuers: These microservices are compliant with Openid4VCI standards and handle the issuance of credentials.
  • Authorization Servers: These microservices implement OAuth2 and work seamlessly with our DID Service for authentication and authorization.
  • Relying Party: These microservices are compliant with Openid4VP standards and act as relying parties for authentication and authorization.

RESOURCES

GitHub

Wallet Holder App ​

The Wallet Holder App offers a secure and user-friendly interface for managing decentralized identities and digital credentials. It allows users to store, view, and share their identity information with ease inside a TEE (Trusted execution environment) directly on citizens devices.

Verifier App ​

The Verifier App provides tools for verifying the authenticity and validity of decentralized identities and digital credentials. It enables organizations to validate identity claims and ensure compliance with regulatory requirements.

DIDroom web components ​

DIDroom Web Components hold all the UI web components used across all the projects to ensure a coherent Atomic design and allow for white-labeling.

',25),s=[a];function n(l,c,d,h,m,p){return t(),o("div",null,s)}const f=e(r,[["render",n]]);export{b as __pageData,f as default}; diff --git a/docs/pr-preview/pr-14/core-technologies.html b/docs/pr-preview/pr-14/core-technologies.html index 858a090..ee659eb 100644 --- a/docs/pr-preview/pr-14/core-technologies.html +++ b/docs/pr-preview/pr-14/core-technologies.html @@ -17,7 +17,7 @@ -
Skip to content

πŸ—οΈ Core Technologies ​

πŸ” Zenroom ​

Zenroom is responsible for all underlying cryptographic operations within the Didroom ecosystem. It provides a secure execution environment for cryptographic operations and smart contracts, ensuring privacy, security, and integrity in digital interactions. Notably, Zenroom runs isomorphically on the web, mobile, and servers across various platforms in a deterministic way.

πŸ“œ Slangroom ​

Slangroom enhances the Zencode language of Zenroom by allowing the addition of plugins. These plugins extend the functionality of Zencode by enabling actions that do not necessarily need to be performed within virtual machines. Slangroom's approach is super standard, making it easy to add custom functionalities within the Zencode natural language. Additionally, Slangroom is capable of running over web pages using WebAssembly.

πŸ› οΈ No-code-room (NCR) ​

No-code-room is a Single Executable Application (SEA) for Linux. It takes a filesystem with .zen (Zencode/Slangroom) contracts and creates API microservices using live-directory routing. NCR seamlessly generates REST services that are auto-documented with OpenAPI. Additionally, it creates small graphic interfaces on the fly, referred to as applets.

RESOURCES

GitHub

πŸ”— Dyne.org Decentralized Identifiers (DID) Service ​

In 2022, Dyne.org implemented a W3C-DID method approved by the W3C governing board and included in the official DID method list. The DID service supports federation and provides tools for the creation, resolution, and management of decentralized identifiers (DIDs). It includes support for ECDSA, EDDSA, Schnorr, Ethereum address, as well as a Dilithium quantum-proof public key.

+
Skip to content

πŸ—οΈ Core Technologies ​

πŸ” Zenroom ​

Zenroom is responsible for all underlying cryptographic operations within the Didroom ecosystem. It provides a secure execution environment for cryptographic operations and smart contracts, ensuring privacy, security, and integrity in digital interactions. Notably, Zenroom runs isomorphically on the web, mobile, and servers across various platforms in a deterministic way.

πŸ“œ Slangroom ​

Slangroom enhances the Zencode language of Zenroom by allowing the addition of plugins. These plugins extend the functionality of Zencode by enabling actions that do not necessarily need to be performed within virtual machines. Slangroom's approach is super standard, making it easy to add custom functionalities within the Zencode natural language. Additionally, Slangroom is capable of running over web pages using WebAssembly.

πŸ› οΈ No-code-room (NCR) ​

No-code-room is a Single Executable Application (SEA) for Linux. It takes a filesystem with .zen (Zencode/Slangroom) contracts and creates API microservices using live-directory routing. NCR seamlessly generates REST services that are auto-documented with OpenAPI. Additionally, it creates small graphic interfaces on the fly, referred to as applets.

RESOURCES

GitHub

πŸ”— Dyne.org Decentralized Identifiers (DID) Service ​

In 2022, Dyne.org implemented a W3C-DID method approved by the W3C governing board and included in the official DID method list. The DID service supports federation and provides tools for the creation, resolution, and management of decentralized identifiers (DIDs). It includes support for ECDSA, EDDSA, Schnorr, Ethereum address, as well as a Dilithium quantum-proof public key.

diff --git a/docs/pr-preview/pr-14/get_started.html b/docs/pr-preview/pr-14/get_started.html index bc0296a..f44c0e3 100644 --- a/docs/pr-preview/pr-14/get_started.html +++ b/docs/pr-preview/pr-14/get_started.html @@ -17,7 +17,7 @@ -
Skip to content

🏁 Get started ​

Welcome to the Didroom Get Started guide! πŸš€ We're thrilled to have you embark on this journey with us. Whether you're a seasoned system administrator, a savvy organization administrator, an enthusiastic wallet holder, or a meticulous verifier, this section is tailor-made to provide you with comprehensive, step-by-step instructions crafted specifically for your role within the Didroom ecosystem.

πŸ’œ

We assume you're already familiar with Didroom's solution, its components and how they works.

If it's not the case, please refer to the introductory section for an overview.

Below, you'll find detailed descriptions of each guide, carefully curated to empower you with the knowledge and tools you need to navigate the world of decentralized identity management πŸ”


System administrators

For folks that wants to deploy and manage the infrastructure that powers Didroom.

Organization administrators

For folks that wants to oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities.

Wallet holders

For individuals that wants to use the Wallet Holder App to manage their decentralized identities and digital credentials securely. Here we walks you through the process of installing and using the Wallet Holder App to store, view, and share identity information with ease.

Verifiers

For individuals that wants to utilize the Verifier App to verify the authenticity and validity of decentralized identities and digital credentials. Here we outlines how to install and use the Verifier App to validate identity claims and ensure compliance with regulatory requirements.

+
Skip to content

🏁 Get started ​

Welcome to the Didroom Get Started guide! πŸš€ We're thrilled to have you embark on this journey with us. Whether you're a seasoned system administrator, a savvy organization administrator, an enthusiastic wallet holder, or a meticulous verifier, this section is tailor-made to provide you with comprehensive, step-by-step instructions crafted specifically for your role within the Didroom ecosystem.

πŸ’œ

We assume you're already familiar with Didroom's solution, its components and how they works.

If it's not the case, please refer to the introductory section for an overview.

Below, you'll find detailed descriptions of each guide, carefully curated to empower you with the knowledge and tools you need to navigate the world of decentralized identity management πŸ”


System administrators

For folks that wants to deploy and manage the infrastructure that powers Didroom.

Organization administrators

For folks that wants to oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities.

Wallet holders

For individuals that wants to use the Wallet Holder App to manage their decentralized identities and digital credentials securely. Here we walks you through the process of installing and using the Wallet Holder App to store, view, and share identity information with ease.

Verifiers

For individuals that wants to utilize the Verifier App to verify the authenticity and validity of decentralized identities and digital credentials. Here we outlines how to install and use the Verifier App to validate identity claims and ensure compliance with regulatory requirements.

diff --git a/docs/pr-preview/pr-14/guides/1_orgadmin/auth_server.html b/docs/pr-preview/pr-14/guides/1_orgadmin/auth_server.html index a88830c..ddd5f98 100644 --- a/docs/pr-preview/pr-14/guides/1_orgadmin/auth_server.html +++ b/docs/pr-preview/pr-14/guides/1_orgadmin/auth_server.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-14/guides/1_orgadmin/create.html b/docs/pr-preview/pr-14/guides/1_orgadmin/create.html index 459310f..51a9c8a 100644 --- a/docs/pr-preview/pr-14/guides/1_orgadmin/create.html +++ b/docs/pr-preview/pr-14/guides/1_orgadmin/create.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-14/guides/1_orgadmin/credential_issuer.html b/docs/pr-preview/pr-14/guides/1_orgadmin/credential_issuer.html index 109d364..520b288 100644 --- a/docs/pr-preview/pr-14/guides/1_orgadmin/credential_issuer.html +++ b/docs/pr-preview/pr-14/guides/1_orgadmin/credential_issuer.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-14/guides/1_orgadmin/index.html b/docs/pr-preview/pr-14/guides/1_orgadmin/index.html index 5d627b1..794a8e6 100644 --- a/docs/pr-preview/pr-14/guides/1_orgadmin/index.html +++ b/docs/pr-preview/pr-14/guides/1_orgadmin/index.html @@ -3,7 +3,7 @@ - πŸ‘©β€βš–οΈ DIDroom Control Room | Didroom ecosystem + πŸ‘©β€βš–οΈ DIDroom Dashboard | Didroom ecosystem @@ -17,7 +17,7 @@ -
Skip to content

πŸ‘©β€βš–οΈ DIDroom Control Room ​

Welcome, System Administrator! This guide provides step-by-step instructions for oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities.

Create an organization ​

Setup a credential issuer metadata ​

Setup an authorization server metadata ​

Create a fully working credential issuing flow ​

+
Skip to content

πŸ‘©β€βš–οΈ DIDroom Dashboard ​

Welcome, System Administrator! This guide provides step-by-step instructions for oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities.

Create an organization ​

Setup a credential issuer metadata ​

Setup an authorization server metadata ​

Create a fully working credential issuing flow ​

diff --git a/docs/pr-preview/pr-14/guides/1_orgadmin/issuance_flow.html b/docs/pr-preview/pr-14/guides/1_orgadmin/issuance_flow.html index 6e937bf..694d46a 100644 --- a/docs/pr-preview/pr-14/guides/1_orgadmin/issuance_flow.html +++ b/docs/pr-preview/pr-14/guides/1_orgadmin/issuance_flow.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-14/guides/2_wallet/1_register.html b/docs/pr-preview/pr-14/guides/2_wallet/1_register.html index 29d98de..bec802d 100644 --- a/docs/pr-preview/pr-14/guides/2_wallet/1_register.html +++ b/docs/pr-preview/pr-14/guides/2_wallet/1_register.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-14/guides/2_wallet/2_join_org.html b/docs/pr-preview/pr-14/guides/2_wallet/2_join_org.html index 288c1b8..28d0446 100644 --- a/docs/pr-preview/pr-14/guides/2_wallet/2_join_org.html +++ b/docs/pr-preview/pr-14/guides/2_wallet/2_join_org.html @@ -17,7 +17,7 @@ -
Skip to content

Join organization ​

Ideally you'd want to join an organization after you created an account on the wallet. Managing users in organization is happening in the DIDroom Control Room, there are multiple ways to do that:

  • You can request to join an organization from My organizations > Join an organization
  • As organization manager you can invite a user to join, from the organization page, go to Members > Add member

Member of an organization ​

Once you have joined an organization you will see in your Wallet's home page, the list of the credentials that the organization is offering. Meaning that you can click on the credential's card to request it.

+
Skip to content

Join organization ​

Ideally you'd want to join an organization after you created an account on the wallet. Managing users in organization is happening in the DIDroom Dashboard, there are multiple ways to do that:

  • You can request to join an organization from My organizations > Join an organization
  • As organization manager you can invite a user to join, from the organization page, go to Members > Add member

Member of an organization ​

Once you have joined an organization you will see in your Wallet's home page, the list of the credentials that the organization is offering. Meaning that you can click on the credential's card to request it.

diff --git a/docs/pr-preview/pr-14/guides/2_wallet/3_get_credential.html b/docs/pr-preview/pr-14/guides/2_wallet/3_get_credential.html index 38e522d..b2ba4e6 100644 --- a/docs/pr-preview/pr-14/guides/2_wallet/3_get_credential.html +++ b/docs/pr-preview/pr-14/guides/2_wallet/3_get_credential.html @@ -17,7 +17,7 @@ -
Skip to content

Request a credential ​

A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer.

After you have created an account and logged in, you can request a credential in multiple ways:

  • From the Wallet's home page: you can request all the credentials that have been created as "public" in the DIDroom Control Room.
  • By scanning a QR-Code: you can re-quest a credential. The Wallet is compatible with the OpenID4VCI standard, so you should be able to request (and receive) credentials also from Credential Issuers which are setup or connected to DIDroom.

Your credentials ​

You can browse the credentials you received in the Wallet page of the Wallet (D'Oh!), they will be listed as cards and show you the issuer that produced them, their expiry and descriptions.

+
Skip to content

Request a credential ​

A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer.

After you have created an account and logged in, you can request a credential in multiple ways:

  • From the Wallet's home page: you can request all the credentials that have been created as "public" in the DIDroom Dashboard.
  • By scanning a QR-Code: you can re-quest a credential. The Wallet is compatible with the OpenID4VCI standard, so you should be able to request (and receive) credentials also from Credential Issuers which are setup or connected to DIDroom.

Your credentials ​

You can browse the credentials you received in the Wallet page of the Wallet (D'Oh!), they will be listed as cards and show you the issuer that produced them, their expiry and descriptions.

diff --git a/docs/pr-preview/pr-14/guides/2_wallet/4_present_credential.html b/docs/pr-preview/pr-14/guides/2_wallet/4_present_credential.html index 2b39a74..7086cf6 100644 --- a/docs/pr-preview/pr-14/guides/2_wallet/4_present_credential.html +++ b/docs/pr-preview/pr-14/guides/2_wallet/4_present_credential.html @@ -17,7 +17,7 @@ -
Skip to content

Present a credential ​

A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer.

The purpose of having a credential is to able to prove the claims to someone in a secure and private way. In order to prove the claims, you will need to present the credential, the term 'present' has technical implication that involve:

  • Cryptographic transformations applied to the credential in order to produce a Verifiable Presentation
  • The communication of the Verifiable Presentation to an application or microservice (called Relying Party) that will verify the claims

Those steps (among with others that we omit for simplicity) occur in the Verification Flow.

The Verification Flow ​

The Verification Flow is initiated by a Verifier, meaning a user equipped with the Verifier App and the following happens:

  1. The Verifier App produces a QR-Code
  2. The user holding the Wallet App, opens QR-Code reader and scans the QR-Code
  3. The Wallet App reads the QR-Code, reads the request of the Verifier and search through list of obtained credentials to see if any of them matches the request.
  4. If a credential is found, that matches the request of the Verifier, than a Verifiable Presentation is produced and sent to Relying Party
  5. If the verification of the Verifiable Presentation is successful (or fails), a notification will appear in both the Wallet and Verififer App
+
Skip to content

Present a credential ​

A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer.

The purpose of having a credential is to able to prove the claims to someone in a secure and private way. In order to prove the claims, you will need to present the credential, the term 'present' has technical implication that involve:

  • Cryptographic transformations applied to the credential in order to produce a Verifiable Presentation
  • The communication of the Verifiable Presentation to an application or microservice (called Relying Party) that will verify the claims

Those steps (among with others that we omit for simplicity) occur in the Verification Flow.

The Verification Flow ​

The Verification Flow is initiated by a Verifier, meaning a user equipped with the Verifier App and the following happens:

  1. The Verifier App produces a QR-Code
  2. The user holding the Wallet App, opens QR-Code reader and scans the QR-Code
  3. The Wallet App reads the QR-Code, reads the request of the Verifier and search through list of obtained credentials to see if any of them matches the request.
  4. If a credential is found, that matches the request of the Verifier, than a Verifiable Presentation is produced and sent to Relying Party
  5. If the verification of the Verifiable Presentation is successful (or fails), a notification will appear in both the Wallet and Verififer App
diff --git a/docs/pr-preview/pr-14/guides/2_wallet/5_preferences.html b/docs/pr-preview/pr-14/guides/2_wallet/5_preferences.html index 47dd0d4..3e6f65f 100644 --- a/docs/pr-preview/pr-14/guides/2_wallet/5_preferences.html +++ b/docs/pr-preview/pr-14/guides/2_wallet/5_preferences.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-14/guides/2_wallet/index.html b/docs/pr-preview/pr-14/guides/2_wallet/index.html index 9c72e0a..a91feed 100644 --- a/docs/pr-preview/pr-14/guides/2_wallet/index.html +++ b/docs/pr-preview/pr-14/guides/2_wallet/index.html @@ -17,7 +17,7 @@ -
Skip to content

πŸ†” Wallet App ​

The Wallet App is an Android/iOS mobile app whose purpose is to request and present credentials.

The Wallet App allows the user to creat an account and the same account can be used to login onto the DIDroom Control Room.

Features ​

Once you login, you can:

  • Select a credential to request, from the list you can see in the Wallet's home. The credentials that you see listed here, depend on what organization(s) your part of.
  • Scan a QR code to receive a credential
  • Scan a QR code (from the Verifier App) to present a credential.
+
Skip to content

πŸ†” Wallet App ​

The Wallet App is an Android/iOS mobile app whose purpose is to request and present credentials.

The Wallet App allows the user to creat an account and the same account can be used to login onto the DIDroom Dashboard.

Features ​

Once you login, you can:

  • Select a credential to request, from the list you can see in the Wallet's home. The credentials that you see listed here, depend on what organization(s) your part of.
  • Scan a QR code to receive a credential
  • Scan a QR code (from the Verifier App) to present a credential.
diff --git a/docs/pr-preview/pr-14/guides/3_verifier/1_join_org.html b/docs/pr-preview/pr-14/guides/3_verifier/1_join_org.html index 950b7aa..f940c62 100644 --- a/docs/pr-preview/pr-14/guides/3_verifier/1_join_org.html +++ b/docs/pr-preview/pr-14/guides/3_verifier/1_join_org.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-14/guides/3_verifier/2_verification_flow.html b/docs/pr-preview/pr-14/guides/3_verifier/2_verification_flow.html index 83967ef..9deaf72 100644 --- a/docs/pr-preview/pr-14/guides/3_verifier/2_verification_flow.html +++ b/docs/pr-preview/pr-14/guides/3_verifier/2_verification_flow.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-14/guides/3_verifier/3_verify.html b/docs/pr-preview/pr-14/guides/3_verifier/3_verify.html index 8529b7f..7338537 100644 --- a/docs/pr-preview/pr-14/guides/3_verifier/3_verify.html +++ b/docs/pr-preview/pr-14/guides/3_verifier/3_verify.html @@ -17,7 +17,7 @@ -
Skip to content

Verification: Success or Failure ​

The Verification Flow is active for some time, during this time a user holding a Wallet can scan the QR Code generated by the Verifier. Scanning the QR will trigger the credential presentation to the Reying Party (an external microservice that verifies the credential).

The result can be:

  • Success: if the Relying Party returns a success result before the expiration
  • Failure: if the Relying Party returns a failure or if nothing happens before the expiration
+
Skip to content

Verification: Success or Failure ​

The Verification Flow is active for some time, during this time a user holding a Wallet can scan the QR Code generated by the Verifier. Scanning the QR will trigger the credential presentation to the Reying Party (an external microservice that verifies the credential).

The result can be:

  • Success: if the Relying Party returns a success result before the expiration
  • Failure: if the Relying Party returns a failure or if nothing happens before the expiration
diff --git a/docs/pr-preview/pr-14/guides/3_verifier/index.html b/docs/pr-preview/pr-14/guides/3_verifier/index.html index 6dbc021..84a2b7a 100644 --- a/docs/pr-preview/pr-14/guides/3_verifier/index.html +++ b/docs/pr-preview/pr-14/guides/3_verifier/index.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-14/guides/4_sysadmin/deploy_microservices.html b/docs/pr-preview/pr-14/guides/4_sysadmin/deploy_microservices.html index bc599c1..2896e69 100644 --- a/docs/pr-preview/pr-14/guides/4_sysadmin/deploy_microservices.html +++ b/docs/pr-preview/pr-14/guides/4_sysadmin/deploy_microservices.html @@ -17,7 +17,7 @@ -
Skip to content

Deploy microservices ​

for πŸ› οΈ System Administrator ​

Preparation ​

  • Register a domain name, let's say: microservices.myapp.domain

  • Setup a linux server, configure SSL and make sure the server is resolved at: https://microservices.myapp.domain/

  • Make sure you have all the commands installed, type: sudo apt install make wget jq git -y

Provision and download the Microservices ​

  • Go to https://dashboard.didroom.com and create an issuance flow
  • From the issuance flow page, download the microservices.zip file by"Download microservices"
  • The issuance flow page should look like this:

issuance_flow

Deploy the Microservices ​

  • Copy the microservices.zip file on the server and unzip it, it should create the folder /DIDroom_microservices (which maybe will be inside /microservices...(

  • type: cd DIDroom_microservices

  • type: make up (this command generates the secret keys for the microservices, and registers a DID for each of them)

From that moment, you should have the microservices (authz_server and credential_issuer) running and configured.

Receive your first credential ​

  • install the wallet on an android phone from here: https://github.com/ForkbombEu/wallet (you can scan the QR code on the github repo),
  • create a user on the wallet
  • scan the QR code you see in the issuance flow page
  • If everything worked well, you should see something like this in the wallet:

wallet (Medium)

DIDroom Microservices are the technological core of the solution: those components offer cryptographic functions as well as transport protocols. The microservices are completely isolated from the Dashboard, meaning that:

  • The code is hosted in a separated repo
  • The microservices can run independently from the Dashboard
  • Each microservice has its own secret keys and DID to identify them: those are generated by the microservice at its first provisioning

Installing DiDRoom Microservices ​

Welcome to DiDRoom Microservices installation guide! Below are two recommended ways to install DiDRoom Microservices:

This method is recommended for users who want a quick and hassle-free installation experience. Follow these steps:

  1. Download Zip File: from the issuance flow of the dashboard dashboard.didroom.com, click on "Download issuer" to download the zip file containing all the necessary components, see screnshot below:

microservices_download

  1. Extract and Configure: Extract the zip file to your desired location and follow the provided instructions to configure the components according to your requirements.

  2. Ready to Use: Once configured, your DiDRoom Microservices are ready to use! Start managing decentralized identities and secure communication seamlessly.

bash
make up

Alternative Way: Clone and Compile ​

This method is recommended for advanced users who prefer to have full control over their installation process. Follow these steps:

  1. Clone Repository: Clone the DiDRoom Microservices repository from our GitHub page.

  2. Compile .well-known and Credential Issuance Info: Compile your .well-known file and credential issuance information according to your specific needs and requirements.

  3. Customize and Configure: Customize and configure the microservices as needed for your applications. Ensure all components are correctly configured and integrated.

  4. Deployment: Deploy the microservices in your environment and start managing decentralized identities and secure communication.

sh
#!/usr/bin/env bash
+    
Skip to content

Deploy microservices ​

for πŸ› οΈ System Administrator ​

Preparation ​

  • Register a domain name, let's say: microservices.myapp.domain

  • Setup a linux server, configure SSL and make sure the server is resolved at: https://microservices.myapp.domain/

  • Make sure you have all the commands installed, type: sudo apt install make wget jq git -y

Provision and download the Microservices ​

  • Go to https://dashboard.didroom.com and create an issuance flow
  • From the issuance flow page, download the microservices.zip file by"Download microservices"
  • The issuance flow page should look like this:

issuance_flow

Deploy the Microservices ​

  • Copy the microservices.zip file on the server and unzip it, it should create the folder /DIDroom_microservices (which maybe will be inside /microservices...(

  • type: cd DIDroom_microservices

  • type: make up (this command generates the secret keys for the microservices, and registers a DID for each of them)

From that moment, you should have the microservices (authz_server and credential_issuer) running and configured.

Receive your first credential ​

  • install the wallet on an android phone from here: https://github.com/ForkbombEu/wallet (you can scan the QR code on the github repo),
  • create a user on the wallet
  • scan the QR code you see in the issuance flow page
  • If everything worked well, you should see something like this in the wallet:

wallet (Medium)

DIDroom Microservices are the technological core of the solution: those components offer cryptographic functions as well as transport protocols. The microservices are completely isolated from the Dashboard, meaning that:

  • The code is hosted in a separated repo
  • The microservices can run independently from the Dashboard
  • Each microservice has its own secret keys and DID to identify them: those are generated by the microservice at its first provisioning

Installing DiDRoom Microservices ​

Welcome to DiDRoom Microservices installation guide! Below are two recommended ways to install DiDRoom Microservices:

This method is recommended for users who want a quick and hassle-free installation experience. Follow these steps:

  1. Download Zip File: from the issuance flow of the dashboard dashboard.didroom.com, click on "Download issuer" to download the zip file containing all the necessary components, see screnshot below:

microservices_download

  1. Extract and Configure: Extract the zip file to your desired location and follow the provided instructions to configure the components according to your requirements.

  2. Ready to Use: Once configured, your DiDRoom Microservices are ready to use! Start managing decentralized identities and secure communication seamlessly.

bash
make up

Alternative Way: Clone and Compile ​

This method is recommended for advanced users who prefer to have full control over their installation process. Follow these steps:

  1. Clone Repository: Clone the DiDRoom Microservices repository from our GitHub page.

  2. Compile .well-known and Credential Issuance Info: Compile your .well-known file and credential issuance information according to your specific needs and requirements.

  3. Customize and Configure: Customize and configure the microservices as needed for your applications. Ensure all components are correctly configured and integrated.

  4. Deployment: Deploy the microservices in your environment and start managing decentralized identities and secure communication.

sh
#!/usr/bin/env bash
 echo 'πŸŽ‰  Welcome to didroom-microservices install'
 git clone --recursive https://github.com/forkbombeu/didroom_microservices
 cd didroom_microservices
diff --git a/docs/pr-preview/pr-14/guides/4_sysadmin/index.html b/docs/pr-preview/pr-14/guides/4_sysadmin/index.html
index 4b44815..ff7806d 100644
--- a/docs/pr-preview/pr-14/guides/4_sysadmin/index.html
+++ b/docs/pr-preview/pr-14/guides/4_sysadmin/index.html
@@ -17,7 +17,7 @@
     
   
   
-    
Skip to content

πŸ› οΈ System Administrator ​

Welcome, System Administrator! This guide provides step-by-step instructions for setting up and managing the infrastructure that powers DiDRoom. Whether you're deploying a new instance, self-hosting the dashboard, or deploying microservices, this guide has you covered.

Setup an Instance πŸ—οΈ ​

Learn how to set up a new instance of DiDRoom to get started with decentralized identity management and secure communication.

Self-Host the Dashboard πŸ–₯️ ​

Explore the process of self-hosting the DiDRoom dashboard to gain full control over your infrastructure and data.

Deploy Microservices πŸš€ ​

Discover how to deploy DiDRoom microservices to enable various functionalities and services within your organization.

+
Skip to content

πŸ› οΈ System Administrator ​

Welcome, System Administrator! This guide provides step-by-step instructions for setting up and managing the infrastructure that powers DiDRoom. Whether you're deploying a new instance, self-hosting the dashboard, or deploying microservices, this guide has you covered.

Setup an Instance πŸ—οΈ ​

Learn how to set up a new instance of DiDRoom to get started with decentralized identity management and secure communication.

Self-Host the Dashboard πŸ–₯️ ​

Explore the process of self-hosting the DiDRoom dashboard to gain full control over your infrastructure and data.

Deploy Microservices πŸš€ ​

Discover how to deploy DiDRoom microservices to enable various functionalities and services within your organization.

diff --git a/docs/pr-preview/pr-14/guides/4_sysadmin/setup.html b/docs/pr-preview/pr-14/guides/4_sysadmin/setup.html index 03f177f..b1e5012 100644 --- a/docs/pr-preview/pr-14/guides/4_sysadmin/setup.html +++ b/docs/pr-preview/pr-14/guides/4_sysadmin/setup.html @@ -17,8 +17,8 @@ -
Skip to content

Setup the Dashboard ​

for πŸ› οΈ System Administrator ​

For users who prefer full control over their infrastructure and data, Didroom supports on-premise deployment. Follow these steps to deploy the DIDroom Dashboard on your own infrastructure:

TIP

If you are unfamiliar with servers, devops and unix commands look also at the Software as a service section that will allow you to define a credential issuance flow in minutes! Without installing anything on your servers.

Checklist

Before starting please make sure you have a

  1. Git installed on your server
  2. Docker compose installed on your server
  3. DID admin domain/context as specified on dyne/W3C-DID

1. clone the repo ​

bash
git clone --recursive https://github.com/forkbombeu/signroom

WARNING

Pay attention at the --recursive that will clone also the sub repositories!

2. Run the Dashboard (Admin Panel and DIDroom Control Room) ​

bash
cd signroom
-docker compose up --build

This will run the DIDroom Dashboard which includes two interconnected web-applications:

  • Admin Panel: based on PocketBase, this application is accessible only to the sysadmin and it allows to configure and edit data structure and API configurations.
  • DIDroom Control Room: this the DIDroom web application accessible to all users, allows to manage credential issuance and verification flows and their deployment and the organizations

The two web applications run on two different ports and have different user accounts.

3. Log in onto the DIDroom Control Room ​

Go to:

http
http://localhost:4173/

Register a new uer or log in using the default user:

user: userA@example.org

pass: userAuserA

4. login onto to the Admin Panel ​

Go to:

http
http://localhost:8090/_

TIP

Pay attention at the final underscore, of the address

A default administrator user is created with the following user and pass:

user: admin@example.org

pass: adminadmin

5. Setup the DID service ​

DIDroom uses the Dyne's DID service as a public key infrastructure. You can choose to ask us (Forkbomb or Dyne.org) to provide you the admin data, or deploy Dyne's DID service on your server.

You can ask for your admin domain/context as specified on dyne/W3C-DID

Follow the video:

  1. login into the dashboard
  2. go on the features collection
  3. select the DID feature
  4. insert you admin data
+
Skip to content

Setup the Dashboard ​

for πŸ› οΈ System Administrator ​

For users who prefer full control over their infrastructure and data, Didroom supports on-premise deployment. Follow these steps to deploy the DIDroom Dashboard on your own infrastructure:

TIP

If you are unfamiliar with servers, devops and unix commands look also at the Software as a service section that will allow you to define a credential issuance flow in minutes! Without installing anything on your servers.

Checklist

Before starting please make sure you have a

  1. Git installed on your server
  2. Docker compose installed on your server
  3. DID admin domain/context as specified on dyne/W3C-DID

1. clone the repo ​

bash
git clone --recursive https://github.com/forkbombeu/signroom

WARNING

Pay attention at the --recursive that will clone also the sub repositories!

2. Run the Dashboard (Admin Panel and DIDroom Dashboard) ​

bash
cd signroom
+docker compose up --build

This will run the DIDroom Dashboard which includes two interconnected web-applications:

  • Admin Panel: based on PocketBase, this application is accessible only to the sysadmin and it allows to configure and edit data structure and API configurations.
  • DIDroom Dashboard: this the DIDroom web application accessible to all users, allows to manage credential issuance and verification flows and their deployment and the organizations

The two web applications run on two different ports and have different user accounts.

3. Log in onto the DIDroom Dashboard ​

Go to:

http
http://localhost:4173/

Register a new uer or log in using the default user:

user: userA@example.org

pass: userAuserA

4. login onto to the Admin Panel ​

Go to:

http
http://localhost:8090/_

TIP

Pay attention at the final underscore, of the address

A default administrator user is created with the following user and pass:

user: admin@example.org

pass: adminadmin

5. Setup the DID service ​

DIDroom uses the Dyne's DID service as a public key infrastructure. You can choose to ask us (Forkbomb or Dyne.org) to provide you the admin data, or deploy Dyne's DID service on your server.

You can ask for your admin domain/context as specified on dyne/W3C-DID

Follow the video:

  1. login into the dashboard
  2. go on the features collection
  3. select the DID feature
  4. insert you admin data
diff --git a/docs/pr-preview/pr-14/guides/4_sysadmin/setup_dashboard.html b/docs/pr-preview/pr-14/guides/4_sysadmin/setup_dashboard.html index a9b71a0..5645125 100644 --- a/docs/pr-preview/pr-14/guides/4_sysadmin/setup_dashboard.html +++ b/docs/pr-preview/pr-14/guides/4_sysadmin/setup_dashboard.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-14/guides/5_components/index.html b/docs/pr-preview/pr-14/guides/5_components/index.html index 924f4b9..50b31e6 100644 --- a/docs/pr-preview/pr-14/guides/5_components/index.html +++ b/docs/pr-preview/pr-14/guides/5_components/index.html @@ -17,7 +17,7 @@ -
Skip to content

πŸ“‘ Concepts/Components ​

Issuance flow: TBW

Verification flow: TBW

Templates: TBW

Decentralized Identifier (DID): A globally unique, self-sovereign identifier that enables individuals and entities to have control over their digital identities without relying on centralized authorities.

EUDI-ARF: Acronym for "The European Digital Identity Wallet Architecture and Reference Framework," a technical core of the eIDAS 2.0 regulation that outlines standards for digital identity wallets.

eIDAS 2.0 Regulation: The updated version of the eIDAS (electronic Identification, Authentication and Trust Services) regulation that sets standards for electronic identification and trusted services within the European Union.

Self-Sovereign Identity (SSI): A decentralized identity model that enables individuals to have full control over their digital identity and personal data. SSI allows users to manage and share verifiable credentials without the need for intermediaries.

Verifiable Credentials (VC): Digital attestations that enable the issuance and verification of claims about a subject's identity, attributes, or qualifications.

Wallet: In the context of DidRoom, a software application or platform that allows users to manage their digital identities, store cryptographic keys, create and manage DIDs, and interact with blockchain networks and verifiable credentials.

Zero-Knowledge Proofs: Cryptographic methods that allow a party to prove knowledge of a certain value or statement without revealing the actual value itself. Zero-knowledge proofs enhance privacy and security by demonstrating knowledge without disclosing sensitive information.

W3C-DID: Abbreviation for "W3C Decentralized Identifier," a standard by the World Wide Web Consortium (W3C) for creating, managing, and resolving decentralized identifiers.

W3C-VC: Abbreviation for "W3C Verifiable Credentials," a standard by the World Wide Web Consortium (W3C) for creating and verifying digital credentials in a secure and interoperable manner.

Zenroom: A cryptographic virtual machine developed by Dyne.org Foundation, capable of performing various cryptographic operations and supporting blockchain interoperability.

Zenswarm: A blockchain oracle technology developed for blockchain interoperability and off-chain cryptography, utilizing Zenroom at its core.

+
Skip to content

πŸ“‘ Concepts/Components ​

Issuance flow: TBW

Verification flow: TBW

Templates: TBW

Decentralized Identifier (DID): A globally unique, self-sovereign identifier that enables individuals and entities to have control over their digital identities without relying on centralized authorities.

EUDI-ARF: Acronym for "The European Digital Identity Wallet Architecture and Reference Framework," a technical core of the eIDAS 2.0 regulation that outlines standards for digital identity wallets.

eIDAS 2.0 Regulation: The updated version of the eIDAS (electronic Identification, Authentication and Trust Services) regulation that sets standards for electronic identification and trusted services within the European Union.

Self-Sovereign Identity (SSI): A decentralized identity model that enables individuals to have full control over their digital identity and personal data. SSI allows users to manage and share verifiable credentials without the need for intermediaries.

Verifiable Credentials (VC): Digital attestations that enable the issuance and verification of claims about a subject's identity, attributes, or qualifications.

Wallet: In the context of DidRoom, a software application or platform that allows users to manage their digital identities, store cryptographic keys, create and manage DIDs, and interact with blockchain networks and verifiable credentials.

Zero-Knowledge Proofs: Cryptographic methods that allow a party to prove knowledge of a certain value or statement without revealing the actual value itself. Zero-knowledge proofs enhance privacy and security by demonstrating knowledge without disclosing sensitive information.

W3C-DID: Abbreviation for "W3C Decentralized Identifier," a standard by the World Wide Web Consortium (W3C) for creating, managing, and resolving decentralized identifiers.

W3C-VC: Abbreviation for "W3C Verifiable Credentials," a standard by the World Wide Web Consortium (W3C) for creating and verifying digital credentials in a secure and interoperable manner.

Zenroom: A cryptographic virtual machine developed by Dyne.org Foundation, capable of performing various cryptographic operations and supporting blockchain interoperability.

Zenswarm: A blockchain oracle technology developed for blockchain interoperability and off-chain cryptography, utilizing Zenroom at its core.

diff --git a/docs/pr-preview/pr-14/guides/5_components/keypairoom.html b/docs/pr-preview/pr-14/guides/5_components/keypairoom.html index 4462b06..834f682 100644 --- a/docs/pr-preview/pr-14/guides/5_components/keypairoom.html +++ b/docs/pr-preview/pr-14/guides/5_components/keypairoom.html @@ -17,7 +17,7 @@ -
Skip to content

Keypairoom: (re)generate your secret keys ​

Keypairoom is component to generate and regenerate a keyring, containing multiple secret keys (along with the correspondet public keys) in a deterministic and private way.

The cryptographic part consists of multiple Zenroom scripts that allows you to generate a seed by answering to questions that (probably) only you can respond, namely "The challenges".

Privacy ​

The challenges are processed inside the client applications (the Wallet App or the browser where you opened the DIDroom Control Room. Note:

  • The Zenroom scripts processing the answers work offline.
  • Your answers are never communicated to any external service.
  • No one can reconstruct them based on their output: this is certain based on the math behind it, if you're curious you can read about it here.
  • The answers are not used to identify you in anyway, they are just some text that only you can write and belong to your past, so it should not change over time.

More about privacy ​

We hear you saying:

I don't want to answer any question I don't trust writing my personal data anywhere... what now?

So you don't want to write private data anywhere, cause you don't trust software security ever? We (the developers) understand you well and share your feelings πŸ˜ƒ

TLDR: answer using random text and save the seed!

If that's the case, no problem at all: you can just answer to the challenges with some random/junk text. After your secret keys are created, you are offered to store the seed: the seed is a piece of data, printed as a mnemonic phrase that will allow you to re-generate the same secret keys at any time.

What does a mmnemonic phrase look like? Like this:

mnemonic
expect cart barely fruit learn tortoise work essence guitar

If you log out from the wallet, or try to login onto a new device (or browser), you are given the option to paste your seed: therefore store your seed in a safe place, it will work forever, no matter what you answered in that challenges.

+
Skip to content

Keypairoom: (re)generate your secret keys ​

Keypairoom is component to generate and regenerate a keyring, containing multiple secret keys (along with the correspondet public keys) in a deterministic and private way.

The cryptographic part consists of multiple Zenroom scripts that allows you to generate a seed by answering to questions that (probably) only you can respond, namely "The challenges".

Privacy ​

The challenges are processed inside the client applications (the Wallet App or the browser where you opened the DIDroom Dashboard. Note:

  • The Zenroom scripts processing the answers work offline.
  • Your answers are never communicated to any external service.
  • No one can reconstruct them based on their output: this is certain based on the math behind it, if you're curious you can read about it here.
  • The answers are not used to identify you in anyway, they are just some text that only you can write and belong to your past, so it should not change over time.

More about privacy ​

We hear you saying:

I don't want to answer any question I don't trust writing my personal data anywhere... what now?

So you don't want to write private data anywhere, cause you don't trust software security ever? We (the developers) understand you well and share your feelings πŸ˜ƒ

TLDR: answer using random text and save the seed!

If that's the case, no problem at all: you can just answer to the challenges with some random/junk text. After your secret keys are created, you are offered to store the seed: the seed is a piece of data, printed as a mnemonic phrase that will allow you to re-generate the same secret keys at any time.

What does a mmnemonic phrase look like? Like this:

mnemonic
expect cart barely fruit learn tortoise work essence guitar

If you log out from the wallet, or try to login onto a new device (or browser), you are given the option to paste your seed: therefore store your seed in a safe place, it will work forever, no matter what you answered in that challenges.

diff --git a/docs/pr-preview/pr-14/guides/index.html b/docs/pr-preview/pr-14/guides/index.html index f9fa4bc..ab6339c 100644 --- a/docs/pr-preview/pr-14/guides/index.html +++ b/docs/pr-preview/pr-14/guides/index.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-14/intro.html b/docs/pr-preview/pr-14/intro.html index 73a2c3e..c010a94 100644 --- a/docs/pr-preview/pr-14/intro.html +++ b/docs/pr-preview/pr-14/intro.html @@ -17,7 +17,7 @@ -
Skip to content

πŸ“– Introduction ​

Welcome to Didroom – your gateway to decentralized identity management and secure communication. Didroom empowers individuals and organizations to take control of their digital identities while ensuring privacy and security. Whether you're looking to streamline identity verification processes, enhance data security, or enable secure communication channels, Didroom provides the tools and infrastructure you need.

You can quickly test, plug and deploy by using our service at dashboard.didroom.com or install the whole ecosystem on-premise on your infrastructure. For detailed instructions please refer to the Get started guide.

How It Works ​

Didroom offers a seamless and intuitive experience for managing decentralized identities and secure communication. Here's how it works:

  • Define services and credentials: Via the Didroom Control Room, users can define services, credentials, and claims services according to their specific requirements.

  • Generate Openid4VCI microservices: Users can generate Openid4VCI microservices directly from the bloom using the Control Room, simplifying the process of creating and deploying identity verification services.

  • Plug custom business logic: Didroom allows users to add custom business logic to their applications, tailoring the functionality to meet their unique needs and requirements.

  • Integrate pre-existing microservices: Users can seamlessly integrate their microservices into their existing systems or applications, enhancing functionality and interoperability.

  • Deploy and control microservices nodes: Didroom enables users to deploy and control microservices nodes directly from the Control Room, streamlining the deployment and management process.

  • Enhance your business logic with natural language smart contracts (Zencode): With Didroom, users can enhance their business logic with natural English smart contracts, enabling advanced automation and decision-making capabilities.

  • Whitelabel wallet and verifier apps: To interact with your services individuals need a wallet app that we provide for whitelabeling. Same a verifier app for indivisuals that want to verify credentials.

Features ​

  • Compliance: Didroom is compliant with industry standards and regulations, including EUDI-ARF, ensuring adherence to data protection laws and regulations.
  • End-to-End encryption: Secure communication is facilitated through end-to-end encryption, ensuring that messages and data remain private and confidential.
  • Decentralized identity management: Didroom enables users to create, control, and manage their digital identities in a decentralized manner, eliminating reliance on central authorities.
  • Customizable and extensible: Didroom is highly customizable and extensible, allowing organizations to tailor the platform to their specific needs and integrate with existing systems seamlessly.

Integration and flexibility ​

Didroom is designed to be seamlessly integrated into third-party solutions and environments. Its modular architecture allows for easy integration with existing microservices or other identity management systems. Whether you need to use Didroom as a standalone solution or integrate it into your existing infrastructure, Didroom provides the flexibility and adaptability you need.

Architectural overview ​

The Didroom ecosystem consists of a modular architecture comprising core technologies and components

  1. Zenroom
  2. Slangroom
  3. No-code-room
  4. Dyne.org Decentralized Identifiers (DID) Service

these provide the foundational elements for identity management and cryptographic operations.

  • Components:

πŸ“‘

For detailed description of each component please refer to πŸ’‘ The Solution

  1. Didroom Control Room / Dashboard
  2. Didroom Microservices
  3. Wallet Holder App
  4. Verifier App

there offer user interfaces and functionalities for managing identities, communication, and verification.

Let's start! ​

Sure, let's 🏁 Get started!

+
Skip to content

πŸ“– Introduction ​

Welcome to Didroom – your gateway to decentralized identity management and secure communication. Didroom empowers individuals and organizations to take control of their digital identities while ensuring privacy and security. Whether you're looking to streamline identity verification processes, enhance data security, or enable secure communication channels, Didroom provides the tools and infrastructure you need.

You can quickly test, plug and deploy by using our service at dashboard.didroom.com or install the whole ecosystem on-premise on your infrastructure. For detailed instructions please refer to the Get started guide.

How It Works ​

Didroom offers a seamless and intuitive experience for managing decentralized identities and secure communication. Here's how it works:

  • Define services and credentials: Via the DIDroom Dashboard, users can define services, credentials, and claims services according to their specific requirements.

  • Generate Openid4VCI microservices: Users can generate Openid4VCI microservices directly from the bloom using the Control Room, simplifying the process of creating and deploying identity verification services.

  • Plug custom business logic: Didroom allows users to add custom business logic to their applications, tailoring the functionality to meet their unique needs and requirements.

  • Integrate pre-existing microservices: Users can seamlessly integrate their microservices into their existing systems or applications, enhancing functionality and interoperability.

  • Deploy and control microservices nodes: Didroom enables users to deploy and control microservices nodes directly from the Control Room, streamlining the deployment and management process.

  • Enhance your business logic with natural language smart contracts (Zencode): With Didroom, users can enhance their business logic with natural English smart contracts, enabling advanced automation and decision-making capabilities.

  • Whitelabel wallet and verifier apps: To interact with your services individuals need a wallet app that we provide for whitelabeling. Same a verifier app for indivisuals that want to verify credentials.

Features ​

  • Compliance: Didroom is compliant with industry standards and regulations, including EUDI-ARF, ensuring adherence to data protection laws and regulations.
  • End-to-End encryption: Secure communication is facilitated through end-to-end encryption, ensuring that messages and data remain private and confidential.
  • Decentralized identity management: Didroom enables users to create, control, and manage their digital identities in a decentralized manner, eliminating reliance on central authorities.
  • Customizable and extensible: Didroom is highly customizable and extensible, allowing organizations to tailor the platform to their specific needs and integrate with existing systems seamlessly.

Integration and flexibility ​

Didroom is designed to be seamlessly integrated into third-party solutions and environments. Its modular architecture allows for easy integration with existing microservices or other identity management systems. Whether you need to use Didroom as a standalone solution or integrate it into your existing infrastructure, Didroom provides the flexibility and adaptability you need.

Architectural overview ​

The Didroom ecosystem consists of a modular architecture comprising core technologies and components

  1. Zenroom
  2. Slangroom
  3. No-code-room
  4. Dyne.org Decentralized Identifiers (DID) Service

these provide the foundational elements for identity management and cryptographic operations.

  • Components:

πŸ“‘

For detailed description of each component please refer to πŸ’‘ The Solution

  1. DIDroom Dashboard / Dashboard
  2. Didroom Microservices
  3. Wallet Holder App
  4. Verifier App

there offer user interfaces and functionalities for managing identities, communication, and verification.

Let's start! ​

Sure, let's 🏁 Get started!

diff --git a/docs/pr-preview/pr-14/solution.html b/docs/pr-preview/pr-14/solution.html index 0917162..9bf19f4 100644 --- a/docs/pr-preview/pr-14/solution.html +++ b/docs/pr-preview/pr-14/solution.html @@ -17,7 +17,7 @@ -
Skip to content

πŸ’‘ The Solution ​

Our solution is divided into different repositories, each focusing on a specific component. This modular approach allows us to maintain flexibility and scalability, enabling users to customize and integrate the solution according to their specific needs and requirements.

DIDroom Control Room (Dashboard) ​

The DIDroom Control Room/Dashboard serves as the central hub for managing decentralized identity solutions. It provides a user-friendly interface for configuring settings, monitoring performance, and accessing key functionalities.

The core features of the Control Room are:

  • Creation of credential issuance and verification flows
  • Deployment and provisioning of the DIDroom Microservices
  • Creation of organizations, assigning of privileges to different users
  • The admin panel of the Control Room offers:
    • User management
    • Setup of web-hooks and automation flows
    • Customization of the Control Room menu entries

DIDroom Mobile libs (Mobile Zencode) ​

A collection of mobile library, Zencode Mobile holds all the business logic and contracts shared between the different components of the DIDroom Solution. It serves as a centralized repository for managing and updating the core business logic used across various mobile applications and components.

RESOURCES

GitHub

DIDroom microservices ​

Those are the technological core of the solution: those components offer cryptographic functions as well as transport protocols. The microservices are completely isolated from the Dashboard, meaning that:

  • The code is hosted in a separated repo
  • The microservices can run independently from the Dashboard
  • Each microservice has its own secret keys and DID to identify them: those are generated by the microservice at its first provisioning

DIDroom microservices are generated using No-code-room (NCR) and utilize the Zencode Mobile repository to create three different microservices:

  • Credential Issuers: These microservices are compliant with Openid4VCI standards and handle the issuance of credentials.
  • Authorization Servers: These microservices implement OAuth2 and work seamlessly with our DID Service for authentication and authorization.
  • Relying Party: These microservices are compliant with Openid4VP standards and act as relying parties for authentication and authorization.

RESOURCES

GitHub

Wallet Holder App ​

The Wallet Holder App offers a secure and user-friendly interface for managing decentralized identities and digital credentials. It allows users to store, view, and share their identity information with ease inside a TEE (Trusted execution environment) directly on citizens devices.

Verifier App ​

The Verifier App provides tools for verifying the authenticity and validity of decentralized identities and digital credentials. It enables organizations to validate identity claims and ensure compliance with regulatory requirements.

DIDroom web components ​

DIDroom Web Components hold all the UI web components used across all the projects to ensure a coherent Atomic design and allow for white-labeling.

+
Skip to content

πŸ’‘ The Solution ​

Our solution is divided into different repositories, each focusing on a specific component. This modular approach allows us to maintain flexibility and scalability, enabling users to customize and integrate the solution according to their specific needs and requirements.

DIDroom Dashboard (Dashboard) ​

The DIDroom Dashboard/Dashboard serves as the central hub for managing decentralized identity solutions. It provides a user-friendly interface for configuring settings, monitoring performance, and accessing key functionalities.

The core features of the Control Room are:

  • Creation of credential issuance and verification flows
  • Deployment and provisioning of the DIDroom Microservices
  • Creation of organizations, assigning of privileges to different users
  • The admin panel of the Control Room offers:
    • User management
    • Setup of web-hooks and automation flows
    • Customization of the Control Room menu entries

DIDroom Mobile libs (Mobile Zencode) ​

A collection of mobile library, Zencode Mobile holds all the business logic and contracts shared between the different components of the DIDroom Solution. It serves as a centralized repository for managing and updating the core business logic used across various mobile applications and components.

RESOURCES

GitHub

DIDroom microservices ​

Those are the technological core of the solution: those components offer cryptographic functions as well as transport protocols. The microservices are completely isolated from the Dashboard, meaning that:

  • The code is hosted in a separated repo
  • The microservices can run independently from the Dashboard
  • Each microservice has its own secret keys and DID to identify them: those are generated by the microservice at its first provisioning

DIDroom microservices are generated using No-code-room (NCR) and utilize the Zencode Mobile repository to create three different microservices:

  • Credential Issuers: These microservices are compliant with Openid4VCI standards and handle the issuance of credentials.
  • Authorization Servers: These microservices implement OAuth2 and work seamlessly with our DID Service for authentication and authorization.
  • Relying Party: These microservices are compliant with Openid4VP standards and act as relying parties for authentication and authorization.

RESOURCES

GitHub

Wallet Holder App ​

The Wallet Holder App offers a secure and user-friendly interface for managing decentralized identities and digital credentials. It allows users to store, view, and share their identity information with ease inside a TEE (Trusted execution environment) directly on citizens devices.

Verifier App ​

The Verifier App provides tools for verifying the authenticity and validity of decentralized identities and digital credentials. It enables organizations to validate identity claims and ensure compliance with regulatory requirements.

DIDroom web components ​

DIDroom Web Components hold all the UI web components used across all the projects to ensure a coherent Atomic design and allow for white-labeling.

diff --git a/docs/pr-preview/pr-16/404.html b/docs/pr-preview/pr-16/404.html index 117a36b..ff4f053 100644 --- a/docs/pr-preview/pr-16/404.html +++ b/docs/pr-preview/pr-16/404.html @@ -17,7 +17,7 @@ -
Skip to content

🚫 Oops! Looks like the document you were hunting for is playing hide and seek with us! Don't worry, our crack team of digital detectives is on the case. πŸ•΅οΈβ€β™‚οΈπŸ” While they're hot on the trail, feel free to kick back, grab a snack, and try your search again in a bit. We promise it'll turn up sooner than you can say "404!" πŸ•°οΈπŸ”Ž

+
Skip to content

🚫 Oops! Looks like the document you were hunting for is playing hide and seek with us! Don't worry, our crack team of digital detectives is on the case. πŸ•΅οΈβ€β™‚οΈπŸ” While they're hot on the trail, feel free to kick back, grab a snack, and try your search again in a bit. We promise it'll turn up sooner than you can say "404!" πŸ•°οΈπŸ”Ž

diff --git a/docs/pr-preview/pr-16/aknowledgements.html b/docs/pr-preview/pr-16/aknowledgements.html index 202044a..63988ef 100644 --- a/docs/pr-preview/pr-16/aknowledgements.html +++ b/docs/pr-preview/pr-16/aknowledgements.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-16/assets/chunks/metadata.09587ecd.js b/docs/pr-preview/pr-16/assets/chunks/metadata.09587ecd.js index f0793e5..e7870d2 100644 --- a/docs/pr-preview/pr-16/assets/chunks/metadata.09587ecd.js +++ b/docs/pr-preview/pr-16/assets/chunks/metadata.09587ecd.js @@ -1 +1 @@ -window.__VP_HASH_MAP__=JSON.parse("{\"guides_4_sysadmin_setup_dashboard.md\":\"BuPdb8tr\",\"guides_3_verifier_index.md\":\"Tz8n2ga9\",\"404.md\":\"B-lbBsu_\",\"intro.md\":\"C-Y17fUh\",\"guides_index.md\":\"CqHRQzyz\",\"guides_1_orgadmin_issuance_flow.md\":\"CunN0yh9\",\"guides_2_wallet_4_present_credential.md\":\"CcXl3Qdt\",\"guides_5_signature_index.md\":\"QJcaCwnE\",\"guides_5_signature_2_multisignature.md\":\"DS28msJ6\",\"guides_5_signature_1_signature.md\":\"BQa7K2Tn\",\"aknowledgements.md\":\"Cvb7seU1\",\"guides_2_wallet_1_register.md\":\"wyy9AjUY\",\"guides_6_components_index.md\":\"Bgn7FMWf\",\"guides_1_orgadmin_auth_server.md\":\"DeIs_CIv\",\"get_started.md\":\"7BKTuIak\",\"guides_1_orgadmin_credential_issuer.md\":\"DBvVgBq7\",\"guides_2_wallet_5_preferences.md\":\"gRslXkmm\",\"guides_1_orgadmin_create.md\":\"DGHrRMJV\",\"guides_2_wallet_2_join_org.md\":\"BmYSPL7K\",\"guides_6_components_keypairoom.md\":\"BuLHkv71\",\"core-technologies.md\":\"DWAWia0p\",\"index.md\":\"OnP0Geud\",\"guides_3_verifier_1_join_org.md\":\"B3IV46lt\",\"guides_4_sysadmin_deploy_microservices.md\":\"CMlag0SA\",\"solution.md\":\"BkQPubXR\",\"guides_2_wallet_3_get_credential.md\":\"BwY_6bmq\",\"guides_1_orgadmin_index.md\":\"DkIlQ0nG\",\"guides_3_verifier_3_verify.md\":\"C4KoUlMm\",\"guides_3_verifier_2_verification_flow.md\":\"cKMSgt7m\",\"guides_4_sysadmin_index.md\":\"C0m7GzDl\",\"guides_4_sysadmin_setup.md\":\"BEbcAy0p\",\"guides_2_wallet_index.md\":\"BsDrvFah\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"Didroom ecosystem\",\"description\":\"Empower your Identity strategy: customize, plug, deploy\",\"base\":\"/DIDroom/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Guide\",\"items\":[{\"text\":\"Organization admins\",\"link\":\"/guides/1_orgadmin/\"},{\"text\":\"Wallet App\",\"link\":\"/guides/2_wallet/\"},{\"text\":\"Verifier App\",\"link\":\"/guides/3_verifier/\"},{\"text\":\"System admins\",\"link\":\"/guides/4_sysadmin/\"}]},{\"text\":\"Get started\",\"link\":\"/get_started\"}],\"logo\":\"images/didroom_logo_emblem.svg\",\"sidebar\":[{\"text\":\"πŸ“– Introduction\",\"link\":\"/intro\"},{\"text\":\"πŸ—οΈ Core Technologies\",\"link\":\"/core-technologies\"},{\"text\":\"πŸ’‘ The Solution\",\"link\":\"/solution\"},{\"text\":\"🏁 Get started\",\"link\":\"/get_started\"},{\"text\":\"Guides\",\"link\":\"/guides/index.md\",\"items\":[{\"text\":\"πŸ‘©β€βš–οΈ DIDroom Control Room\",\"link\":\"/guides/1_orgadmin/index.md\",\"items\":[{\"text\":\"Setup an authorization server metadata\",\"link\":\"/guides/1_orgadmin/auth_server\"},{\"text\":\"Create an organization\",\"link\":\"/guides/1_orgadmin/create\"},{\"text\":\"Setup a credential issuer metadata\",\"link\":\"/guides/1_orgadmin/credential_issuer\"},{\"text\":\"Create a fully working credential issuing flow\",\"link\":\"/guides/1_orgadmin/issuance_flow\"}],\"collapsed\":false},{\"text\":\"πŸ†” Wallet App \",\"link\":\"/guides/2_wallet/index.md\",\"items\":[{\"text\":\"Create a user account (or login)\",\"link\":\"/guides/2_wallet/1_register\"},{\"text\":\"Join organization\",\"link\":\"/guides/2_wallet/2_join_org\"},{\"text\":\"Request a credential \",\"link\":\"/guides/2_wallet/3_get_credential\"},{\"text\":\"Present a credential\",\"link\":\"/guides/2_wallet/4_present_credential\"},{\"text\":\"Preference page\",\"link\":\"/guides/2_wallet/5_preferences\"}],\"collapsed\":false},{\"text\":\"βœ”οΈ Verifier App \",\"link\":\"/guides/3_verifier/index.md\",\"items\":[{\"text\":\"Create an account and join an organization\",\"link\":\"/guides/3_verifier/1_join_org\"},{\"text\":\"Start a Verification Flow\",\"link\":\"/guides/3_verifier/2_verification_flow\"},{\"text\":\"Verification: Success or Failure\",\"link\":\"/guides/3_verifier/3_verify\"}],\"collapsed\":false},{\"text\":\"πŸ› οΈ System Administrator\",\"link\":\"/guides/4_sysadmin/index.md\",\"items\":[{\"text\":\"Setup the Dashboard\",\"link\":\"/guides/4_sysadmin/setup\"},{\"text\":\"Self-Host the Dashboard\",\"link\":\"/guides/4_sysadmin/setup_dashboard\"},{\"text\":\"Deploy microservices\",\"link\":\"/guides/4_sysadmin/deploy_microservices\"}],\"collapsed\":false},{\"text\":\"πŸ–ŠοΈ Signatures \",\"link\":\"/guides/5_signature/index.md\",\"items\":[{\"text\":\"Signature\",\"link\":\"/guides/5_signature/1_signature\"},{\"text\":\"Multisignature Flow\",\"link\":\"/guides/5_signature/2_multisignature\"}],\"collapsed\":false},{\"text\":\"πŸ“‘ Concepts/Components\",\"link\":\"/guides/6_components/index.md\",\"items\":[{\"text\":\"Keypairoom: (re)generate your secret keys\",\"link\":\"/guides/6_components/keypairoom\"}],\"collapsed\":false}],\"collapsed\":false},{\"text\":\"404\",\"link\":\"/404\"},{\"text\":\"🫢🏻 Aknowledgements\",\"link\":\"/aknowledgements\"}],\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/forkbombeu/didroom\"},{\"icon\":\"linkedin\",\"link\":\"https://linkedin.com/company/forkbomb\"}],\"footer\":{\"message\":\"Released under the AGPLv3 License.\",\"copyright\":\"Copyleft πŸ„― 2023-present The Forkbomb Company\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":false}"); \ No newline at end of file +window.__VP_HASH_MAP__=JSON.parse("{\"guides_4_sysadmin_setup_dashboard.md\":\"BuPdb8tr\",\"guides_3_verifier_index.md\":\"Tz8n2ga9\",\"404.md\":\"B-lbBsu_\",\"intro.md\":\"C-Y17fUh\",\"guides_index.md\":\"CqHRQzyz\",\"guides_1_orgadmin_issuance_flow.md\":\"CunN0yh9\",\"guides_2_wallet_4_present_credential.md\":\"CcXl3Qdt\",\"guides_5_signature_index.md\":\"QJcaCwnE\",\"guides_5_signature_2_multisignature.md\":\"DS28msJ6\",\"guides_5_signature_1_signature.md\":\"BQa7K2Tn\",\"aknowledgements.md\":\"Cvb7seU1\",\"guides_2_wallet_1_register.md\":\"wyy9AjUY\",\"guides_6_components_index.md\":\"Bgn7FMWf\",\"guides_1_orgadmin_auth_server.md\":\"DeIs_CIv\",\"get_started.md\":\"7BKTuIak\",\"guides_1_orgadmin_credential_issuer.md\":\"DBvVgBq7\",\"guides_2_wallet_5_preferences.md\":\"gRslXkmm\",\"guides_1_orgadmin_create.md\":\"DGHrRMJV\",\"guides_2_wallet_2_join_org.md\":\"BmYSPL7K\",\"guides_6_components_keypairoom.md\":\"BuLHkv71\",\"core-technologies.md\":\"DWAWia0p\",\"index.md\":\"OnP0Geud\",\"guides_3_verifier_1_join_org.md\":\"B3IV46lt\",\"guides_4_sysadmin_deploy_microservices.md\":\"CMlag0SA\",\"solution.md\":\"BkQPubXR\",\"guides_2_wallet_3_get_credential.md\":\"BwY_6bmq\",\"guides_1_orgadmin_index.md\":\"DkIlQ0nG\",\"guides_3_verifier_3_verify.md\":\"C4KoUlMm\",\"guides_3_verifier_2_verification_flow.md\":\"cKMSgt7m\",\"guides_4_sysadmin_index.md\":\"C0m7GzDl\",\"guides_4_sysadmin_setup.md\":\"BEbcAy0p\",\"guides_2_wallet_index.md\":\"BsDrvFah\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"Didroom ecosystem\",\"description\":\"Empower your Identity strategy: customize, plug, deploy\",\"base\":\"/DIDroom/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Guide\",\"items\":[{\"text\":\"Organization admins\",\"link\":\"/guides/1_orgadmin/\"},{\"text\":\"Wallet App\",\"link\":\"/guides/2_wallet/\"},{\"text\":\"Verifier App\",\"link\":\"/guides/3_verifier/\"},{\"text\":\"System admins\",\"link\":\"/guides/4_sysadmin/\"}]},{\"text\":\"Get started\",\"link\":\"/get_started\"}],\"logo\":\"images/didroom_logo_emblem.svg\",\"sidebar\":[{\"text\":\"πŸ“– Introduction\",\"link\":\"/intro\"},{\"text\":\"πŸ—οΈ Core Technologies\",\"link\":\"/core-technologies\"},{\"text\":\"πŸ’‘ The Solution\",\"link\":\"/solution\"},{\"text\":\"🏁 Get started\",\"link\":\"/get_started\"},{\"text\":\"Guides\",\"link\":\"/guides/index.md\",\"items\":[{\"text\":\"πŸ‘©β€βš–οΈ DIDroom Dashboard\",\"link\":\"/guides/1_orgadmin/index.md\",\"items\":[{\"text\":\"Setup an authorization server metadata\",\"link\":\"/guides/1_orgadmin/auth_server\"},{\"text\":\"Create an organization\",\"link\":\"/guides/1_orgadmin/create\"},{\"text\":\"Setup a credential issuer metadata\",\"link\":\"/guides/1_orgadmin/credential_issuer\"},{\"text\":\"Create a fully working credential issuing flow\",\"link\":\"/guides/1_orgadmin/issuance_flow\"}],\"collapsed\":false},{\"text\":\"πŸ†” Wallet App \",\"link\":\"/guides/2_wallet/index.md\",\"items\":[{\"text\":\"Create a user account (or login)\",\"link\":\"/guides/2_wallet/1_register\"},{\"text\":\"Join organization\",\"link\":\"/guides/2_wallet/2_join_org\"},{\"text\":\"Request a credential \",\"link\":\"/guides/2_wallet/3_get_credential\"},{\"text\":\"Present a credential\",\"link\":\"/guides/2_wallet/4_present_credential\"},{\"text\":\"Preference page\",\"link\":\"/guides/2_wallet/5_preferences\"}],\"collapsed\":false},{\"text\":\"βœ”οΈ Verifier App \",\"link\":\"/guides/3_verifier/index.md\",\"items\":[{\"text\":\"Create an account and join an organization\",\"link\":\"/guides/3_verifier/1_join_org\"},{\"text\":\"Start a Verification Flow\",\"link\":\"/guides/3_verifier/2_verification_flow\"},{\"text\":\"Verification: Success or Failure\",\"link\":\"/guides/3_verifier/3_verify\"}],\"collapsed\":false},{\"text\":\"πŸ› οΈ System Administrator\",\"link\":\"/guides/4_sysadmin/index.md\",\"items\":[{\"text\":\"Setup the Dashboard\",\"link\":\"/guides/4_sysadmin/setup\"},{\"text\":\"Self-Host the Dashboard\",\"link\":\"/guides/4_sysadmin/setup_dashboard\"},{\"text\":\"Deploy microservices\",\"link\":\"/guides/4_sysadmin/deploy_microservices\"}],\"collapsed\":false},{\"text\":\"πŸ–ŠοΈ Signatures \",\"link\":\"/guides/5_signature/index.md\",\"items\":[{\"text\":\"Signature\",\"link\":\"/guides/5_signature/1_signature\"},{\"text\":\"Multisignature Flow\",\"link\":\"/guides/5_signature/2_multisignature\"}],\"collapsed\":false},{\"text\":\"πŸ“‘ Concepts/Components\",\"link\":\"/guides/6_components/index.md\",\"items\":[{\"text\":\"Keypairoom: (re)generate your secret keys\",\"link\":\"/guides/6_components/keypairoom\"}],\"collapsed\":false}],\"collapsed\":false},{\"text\":\"404\",\"link\":\"/404\"},{\"text\":\"🫢🏻 Aknowledgements\",\"link\":\"/aknowledgements\"}],\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/forkbombeu/didroom\"},{\"icon\":\"linkedin\",\"link\":\"https://linkedin.com/company/forkbomb\"}],\"footer\":{\"message\":\"Released under the AGPLv3 License.\",\"copyright\":\"Copyleft πŸ„― 2023-present The Forkbomb Company\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":false}"); \ No newline at end of file diff --git a/docs/pr-preview/pr-16/assets/guides_1_orgadmin_index.md.DkIlQ0nG.js b/docs/pr-preview/pr-16/assets/guides_1_orgadmin_index.md.DkIlQ0nG.js index b786e65..1b37326 100644 --- a/docs/pr-preview/pr-16/assets/guides_1_orgadmin_index.md.DkIlQ0nG.js +++ b/docs/pr-preview/pr-16/assets/guides_1_orgadmin_index.md.DkIlQ0nG.js @@ -1 +1 @@ -import{_ as e,c as a,o,a3 as t}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"πŸ‘©β€βš–οΈ DIDroom Control Room","description":"","frontmatter":{},"headers":[],"relativePath":"guides/1_orgadmin/index.md","filePath":"guides/1_orgadmin/index.md","lastUpdated":1715167532000}'),r={name:"guides/1_orgadmin/index.md"},i=t('

πŸ‘©β€βš–οΈ DIDroom Control Room ​

Welcome, System Administrator! This guide provides step-by-step instructions for oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities.

Create an organization ​

Setup a credential issuer metadata ​

Setup an authorization server metadata ​

Create a fully working credential issuing flow ​

',10),n=[i];function s(d,c,l,u,m,h){return o(),a("div",null,n)}const f=e(r,[["render",s]]);export{g as __pageData,f as default}; +import{_ as e,c as a,o,a3 as t}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"πŸ‘©β€βš–οΈ DIDroom Dashboard","description":"","frontmatter":{},"headers":[],"relativePath":"guides/1_orgadmin/index.md","filePath":"guides/1_orgadmin/index.md","lastUpdated":1715167532000}'),r={name:"guides/1_orgadmin/index.md"},i=t('

πŸ‘©β€βš–οΈ DIDroom Dashboard ​

Welcome, System Administrator! This guide provides step-by-step instructions for oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities.

Create an organization ​

Setup a credential issuer metadata ​

Setup an authorization server metadata ​

Create a fully working credential issuing flow ​

',10),n=[i];function s(d,c,l,u,m,h){return o(),a("div",null,n)}const f=e(r,[["render",s]]);export{g as __pageData,f as default}; diff --git a/docs/pr-preview/pr-16/assets/guides_1_orgadmin_index.md.DkIlQ0nG.lean.js b/docs/pr-preview/pr-16/assets/guides_1_orgadmin_index.md.DkIlQ0nG.lean.js index 752b0cd..8f5f12b 100644 --- a/docs/pr-preview/pr-16/assets/guides_1_orgadmin_index.md.DkIlQ0nG.lean.js +++ b/docs/pr-preview/pr-16/assets/guides_1_orgadmin_index.md.DkIlQ0nG.lean.js @@ -1 +1 @@ -import{_ as e,c as a,o,a3 as t}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"πŸ‘©β€βš–οΈ DIDroom Control Room","description":"","frontmatter":{},"headers":[],"relativePath":"guides/1_orgadmin/index.md","filePath":"guides/1_orgadmin/index.md","lastUpdated":1715167532000}'),r={name:"guides/1_orgadmin/index.md"},i=t("",10),n=[i];function s(d,c,l,u,m,h){return o(),a("div",null,n)}const f=e(r,[["render",s]]);export{g as __pageData,f as default}; +import{_ as e,c as a,o,a3 as t}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"πŸ‘©β€βš–οΈ DIDroom Dashboard","description":"","frontmatter":{},"headers":[],"relativePath":"guides/1_orgadmin/index.md","filePath":"guides/1_orgadmin/index.md","lastUpdated":1715167532000}'),r={name:"guides/1_orgadmin/index.md"},i=t("",10),n=[i];function s(d,c,l,u,m,h){return o(),a("div",null,n)}const f=e(r,[["render",s]]);export{g as __pageData,f as default}; diff --git a/docs/pr-preview/pr-16/assets/guides_2_wallet_1_register.md.wyy9AjUY.js b/docs/pr-preview/pr-16/assets/guides_2_wallet_1_register.md.wyy9AjUY.js index fcffe57..9f0fc2b 100644 --- a/docs/pr-preview/pr-16/assets/guides_2_wallet_1_register.md.wyy9AjUY.js +++ b/docs/pr-preview/pr-16/assets/guides_2_wallet_1_register.md.wyy9AjUY.js @@ -1 +1 @@ -import{_ as a,c as o,o as r,m as e,a as t}from"./chunks/framework.CHPBlGxi.js";const f=JSON.parse('{"title":"Create a user account (or login)","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/1_register.md","filePath":"guides/2_wallet/1_register.md","lastUpdated":1716542007000}'),n={name:"guides/2_wallet/1_register.md"},s=e("h1",{id:"create-a-user-account-or-login",tabindex:"-1"},[t("Create a user account (or login) "),e("a",{class:"header-anchor",href:"#create-a-user-account-or-login","aria-label":'Permalink to "Create a user account (or login)"'},"​")],-1),c=e("p",null,[t("You can create an account in the Wallet, or you can login using an account that previously registered on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room"),t(". In both cases you'll need to generate your secret keys, using "),e("a",{href:"./../6_components/keypairoom.html"},"Keypairoom")],-1),i=[s,c];function l(d,u,_,h,g,m){return r(),o("div",null,i)}const y=a(n,[["render",l]]);export{f as __pageData,y as default}; +import{_ as a,c as o,o as r,m as e,a as t}from"./chunks/framework.CHPBlGxi.js";const f=JSON.parse('{"title":"Create a user account (or login)","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/1_register.md","filePath":"guides/2_wallet/1_register.md","lastUpdated":1716542007000}'),n={name:"guides/2_wallet/1_register.md"},s=e("h1",{id:"create-a-user-account-or-login",tabindex:"-1"},[t("Create a user account (or login) "),e("a",{class:"header-anchor",href:"#create-a-user-account-or-login","aria-label":'Permalink to "Create a user account (or login)"'},"​")],-1),c=e("p",null,[t("You can create an account in the Wallet, or you can login using an account that previously registered on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard"),t(". In both cases you'll need to generate your secret keys, using "),e("a",{href:"./../6_components/keypairoom.html"},"Keypairoom")],-1),i=[s,c];function l(d,u,_,h,g,m){return r(),o("div",null,i)}const y=a(n,[["render",l]]);export{f as __pageData,y as default}; diff --git a/docs/pr-preview/pr-16/assets/guides_2_wallet_1_register.md.wyy9AjUY.lean.js b/docs/pr-preview/pr-16/assets/guides_2_wallet_1_register.md.wyy9AjUY.lean.js index fcffe57..9f0fc2b 100644 --- a/docs/pr-preview/pr-16/assets/guides_2_wallet_1_register.md.wyy9AjUY.lean.js +++ b/docs/pr-preview/pr-16/assets/guides_2_wallet_1_register.md.wyy9AjUY.lean.js @@ -1 +1 @@ -import{_ as a,c as o,o as r,m as e,a as t}from"./chunks/framework.CHPBlGxi.js";const f=JSON.parse('{"title":"Create a user account (or login)","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/1_register.md","filePath":"guides/2_wallet/1_register.md","lastUpdated":1716542007000}'),n={name:"guides/2_wallet/1_register.md"},s=e("h1",{id:"create-a-user-account-or-login",tabindex:"-1"},[t("Create a user account (or login) "),e("a",{class:"header-anchor",href:"#create-a-user-account-or-login","aria-label":'Permalink to "Create a user account (or login)"'},"​")],-1),c=e("p",null,[t("You can create an account in the Wallet, or you can login using an account that previously registered on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room"),t(". In both cases you'll need to generate your secret keys, using "),e("a",{href:"./../6_components/keypairoom.html"},"Keypairoom")],-1),i=[s,c];function l(d,u,_,h,g,m){return r(),o("div",null,i)}const y=a(n,[["render",l]]);export{f as __pageData,y as default}; +import{_ as a,c as o,o as r,m as e,a as t}from"./chunks/framework.CHPBlGxi.js";const f=JSON.parse('{"title":"Create a user account (or login)","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/1_register.md","filePath":"guides/2_wallet/1_register.md","lastUpdated":1716542007000}'),n={name:"guides/2_wallet/1_register.md"},s=e("h1",{id:"create-a-user-account-or-login",tabindex:"-1"},[t("Create a user account (or login) "),e("a",{class:"header-anchor",href:"#create-a-user-account-or-login","aria-label":'Permalink to "Create a user account (or login)"'},"​")],-1),c=e("p",null,[t("You can create an account in the Wallet, or you can login using an account that previously registered on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard"),t(". In both cases you'll need to generate your secret keys, using "),e("a",{href:"./../6_components/keypairoom.html"},"Keypairoom")],-1),i=[s,c];function l(d,u,_,h,g,m){return r(),o("div",null,i)}const y=a(n,[["render",l]]);export{f as __pageData,y as default}; diff --git a/docs/pr-preview/pr-16/assets/guides_2_wallet_2_join_org.md.BmYSPL7K.js b/docs/pr-preview/pr-16/assets/guides_2_wallet_2_join_org.md.BmYSPL7K.js index bcbd28b..65609eb 100644 --- a/docs/pr-preview/pr-16/assets/guides_2_wallet_2_join_org.md.BmYSPL7K.js +++ b/docs/pr-preview/pr-16/assets/guides_2_wallet_2_join_org.md.BmYSPL7K.js @@ -1 +1 @@ -import{_ as a,c as o,o as e,a3 as n}from"./chunks/framework.CHPBlGxi.js";const u=JSON.parse('{"title":"Join organization","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/2_join_org.md","filePath":"guides/2_wallet/2_join_org.md","lastUpdated":1715167532000}'),t={name:"guides/2_wallet/2_join_org.md"},i=n('

Join organization ​

Ideally you'd want to join an organization after you created an account on the wallet. Managing users in organization is happening in the DIDroom Control Room, there are multiple ways to do that:

  • You can request to join an organization from My organizations > Join an organization
  • As organization manager you can invite a user to join, from the organization page, go to Members > Add member

Member of an organization ​

Once you have joined an organization you will see in your Wallet's home page, the list of the credentials that the organization is offering. Meaning that you can click on the credential's card to request it.

',5),r=[i];function l(s,_,d,g,c,h){return e(),o("div",null,r)}const f=a(t,[["render",l]]);export{u as __pageData,f as default}; +import{_ as a,c as o,o as e,a3 as n}from"./chunks/framework.CHPBlGxi.js";const u=JSON.parse('{"title":"Join organization","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/2_join_org.md","filePath":"guides/2_wallet/2_join_org.md","lastUpdated":1715167532000}'),t={name:"guides/2_wallet/2_join_org.md"},i=n('

Join organization ​

Ideally you'd want to join an organization after you created an account on the wallet. Managing users in organization is happening in the DIDroom Dashboard, there are multiple ways to do that:

  • You can request to join an organization from My organizations > Join an organization
  • As organization manager you can invite a user to join, from the organization page, go to Members > Add member

Member of an organization ​

Once you have joined an organization you will see in your Wallet's home page, the list of the credentials that the organization is offering. Meaning that you can click on the credential's card to request it.

',5),r=[i];function l(s,_,d,g,c,h){return e(),o("div",null,r)}const f=a(t,[["render",l]]);export{u as __pageData,f as default}; diff --git a/docs/pr-preview/pr-16/assets/guides_2_wallet_3_get_credential.md.BwY_6bmq.js b/docs/pr-preview/pr-16/assets/guides_2_wallet_3_get_credential.md.BwY_6bmq.js index 8287e9d..358b4d0 100644 --- a/docs/pr-preview/pr-16/assets/guides_2_wallet_3_get_credential.md.BwY_6bmq.js +++ b/docs/pr-preview/pr-16/assets/guides_2_wallet_3_get_credential.md.BwY_6bmq.js @@ -1 +1 @@ -import{_ as e,c as a,o as t,a3 as r}from"./chunks/framework.CHPBlGxi.js";const m=JSON.parse('{"title":"Request a credential","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/3_get_credential.md","filePath":"guides/2_wallet/3_get_credential.md","lastUpdated":1715167532000}'),o={name:"guides/2_wallet/3_get_credential.md"},n=r('

Request a credential ​

A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer.

After you have created an account and logged in, you can request a credential in multiple ways:

  • From the Wallet's home page: you can request all the credentials that have been created as "public" in the DIDroom Control Room.
  • By scanning a QR-Code: you can re-quest a credential. The Wallet is compatible with the OpenID4VCI standard, so you should be able to request (and receive) credentials also from Credential Issuers which are setup or connected to DIDroom.

Your credentials ​

You can browse the credentials you received in the Wallet page of the Wallet (D'Oh!), they will be listed as cards and show you the issuer that produced them, their expiry and descriptions.

',6),i=[n];function s(l,d,c,h,u,_){return t(),a("div",null,i)}const f=e(o,[["render",s]]);export{m as __pageData,f as default}; +import{_ as e,c as a,o as t,a3 as r}from"./chunks/framework.CHPBlGxi.js";const m=JSON.parse('{"title":"Request a credential","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/3_get_credential.md","filePath":"guides/2_wallet/3_get_credential.md","lastUpdated":1715167532000}'),o={name:"guides/2_wallet/3_get_credential.md"},n=r('

Request a credential ​

A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer.

After you have created an account and logged in, you can request a credential in multiple ways:

  • From the Wallet's home page: you can request all the credentials that have been created as "public" in the DIDroom Dashboard.
  • By scanning a QR-Code: you can re-quest a credential. The Wallet is compatible with the OpenID4VCI standard, so you should be able to request (and receive) credentials also from Credential Issuers which are setup or connected to DIDroom.

Your credentials ​

You can browse the credentials you received in the Wallet page of the Wallet (D'Oh!), they will be listed as cards and show you the issuer that produced them, their expiry and descriptions.

',6),i=[n];function s(l,d,c,h,u,_){return t(),a("div",null,i)}const f=e(o,[["render",s]]);export{m as __pageData,f as default}; diff --git a/docs/pr-preview/pr-16/assets/guides_2_wallet_index.md.BsDrvFah.js b/docs/pr-preview/pr-16/assets/guides_2_wallet_index.md.BsDrvFah.js index 4cd5072..0787a42 100644 --- a/docs/pr-preview/pr-16/assets/guides_2_wallet_index.md.BsDrvFah.js +++ b/docs/pr-preview/pr-16/assets/guides_2_wallet_index.md.BsDrvFah.js @@ -1 +1 @@ -import{_ as e,c as t,o as a,a3 as o}from"./chunks/framework.CHPBlGxi.js";const m=JSON.parse('{"title":"πŸ†” Wallet App","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/index.md","filePath":"guides/2_wallet/index.md","lastUpdated":1715167532000}'),r={name:"guides/2_wallet/index.md"},l=o('

πŸ†” Wallet App ​

The Wallet App is an Android/iOS mobile app whose purpose is to request and present credentials.

The Wallet App allows the user to creat an account and the same account can be used to login onto the DIDroom Control Room.

Features ​

Once you login, you can:

  • Select a credential to request, from the list you can see in the Wallet's home. The credentials that you see listed here, depend on what organization(s) your part of.
  • Scan a QR code to receive a credential
  • Scan a QR code (from the Verifier App) to present a credential.
',6),n=[l];function s(i,d,c,p,h,u){return a(),t("div",null,n)}const f=e(r,[["render",s]]);export{m as __pageData,f as default}; +import{_ as e,c as t,o as a,a3 as o}from"./chunks/framework.CHPBlGxi.js";const m=JSON.parse('{"title":"πŸ†” Wallet App","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/index.md","filePath":"guides/2_wallet/index.md","lastUpdated":1715167532000}'),r={name:"guides/2_wallet/index.md"},l=o('

πŸ†” Wallet App ​

The Wallet App is an Android/iOS mobile app whose purpose is to request and present credentials.

The Wallet App allows the user to creat an account and the same account can be used to login onto the DIDroom Dashboard.

Features ​

Once you login, you can:

  • Select a credential to request, from the list you can see in the Wallet's home. The credentials that you see listed here, depend on what organization(s) your part of.
  • Scan a QR code to receive a credential
  • Scan a QR code (from the Verifier App) to present a credential.
',6),n=[l];function s(i,d,c,p,h,u){return a(),t("div",null,n)}const f=e(r,[["render",s]]);export{m as __pageData,f as default}; diff --git a/docs/pr-preview/pr-16/assets/guides_3_verifier_1_join_org.md.B3IV46lt.js b/docs/pr-preview/pr-16/assets/guides_3_verifier_1_join_org.md.B3IV46lt.js index 29a471c..a2709a5 100644 --- a/docs/pr-preview/pr-16/assets/guides_3_verifier_1_join_org.md.B3IV46lt.js +++ b/docs/pr-preview/pr-16/assets/guides_3_verifier_1_join_org.md.B3IV46lt.js @@ -1 +1 @@ -import{_ as e,c as n,o as t,m as a,a as o}from"./chunks/framework.CHPBlGxi.js";const b=JSON.parse('{"title":"Create an account and join an organization","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/1_join_org.md","filePath":"guides/3_verifier/1_join_org.md","lastUpdated":1715167532000}'),r={name:"guides/3_verifier/1_join_org.md"},i=a("h1",{id:"create-an-account-and-join-an-organization",tabindex:"-1"},[o("Create an account and join an organization "),a("a",{class:"header-anchor",href:"#create-an-account-and-join-an-organization","aria-label":'Permalink to "Create an account and join an organization"'},"​")],-1),s=a("p",null,"In order to use the Verifier app and the Verification Flow, the user is supposed to:",-1),c=a("ol",null,[a("li",null,[o("have an account on "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room")]),a("li",null,"be part of an organization")],-1),d=a("p",null,[o("The Verifier only allows a user to login (with an existing account), meaning that an account has to be created on the "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room"),o(" or in the Wallet")],-1),l=[i,s,c,d];function _(h,u,p,f,m,g){return t(),n("div",null,l)}const v=e(r,[["render",_]]);export{b as __pageData,v as default}; +import{_ as e,c as n,o as t,m as a,a as o}from"./chunks/framework.CHPBlGxi.js";const b=JSON.parse('{"title":"Create an account and join an organization","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/1_join_org.md","filePath":"guides/3_verifier/1_join_org.md","lastUpdated":1715167532000}'),r={name:"guides/3_verifier/1_join_org.md"},i=a("h1",{id:"create-an-account-and-join-an-organization",tabindex:"-1"},[o("Create an account and join an organization "),a("a",{class:"header-anchor",href:"#create-an-account-and-join-an-organization","aria-label":'Permalink to "Create an account and join an organization"'},"​")],-1),s=a("p",null,"In order to use the Verifier app and the Verification Flow, the user is supposed to:",-1),c=a("ol",null,[a("li",null,[o("have an account on "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard")]),a("li",null,"be part of an organization")],-1),d=a("p",null,[o("The Verifier only allows a user to login (with an existing account), meaning that an account has to be created on the "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard"),o(" or in the Wallet")],-1),l=[i,s,c,d];function _(h,u,p,f,m,g){return t(),n("div",null,l)}const v=e(r,[["render",_]]);export{b as __pageData,v as default}; diff --git a/docs/pr-preview/pr-16/assets/guides_3_verifier_1_join_org.md.B3IV46lt.lean.js b/docs/pr-preview/pr-16/assets/guides_3_verifier_1_join_org.md.B3IV46lt.lean.js index 29a471c..a2709a5 100644 --- a/docs/pr-preview/pr-16/assets/guides_3_verifier_1_join_org.md.B3IV46lt.lean.js +++ b/docs/pr-preview/pr-16/assets/guides_3_verifier_1_join_org.md.B3IV46lt.lean.js @@ -1 +1 @@ -import{_ as e,c as n,o as t,m as a,a as o}from"./chunks/framework.CHPBlGxi.js";const b=JSON.parse('{"title":"Create an account and join an organization","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/1_join_org.md","filePath":"guides/3_verifier/1_join_org.md","lastUpdated":1715167532000}'),r={name:"guides/3_verifier/1_join_org.md"},i=a("h1",{id:"create-an-account-and-join-an-organization",tabindex:"-1"},[o("Create an account and join an organization "),a("a",{class:"header-anchor",href:"#create-an-account-and-join-an-organization","aria-label":'Permalink to "Create an account and join an organization"'},"​")],-1),s=a("p",null,"In order to use the Verifier app and the Verification Flow, the user is supposed to:",-1),c=a("ol",null,[a("li",null,[o("have an account on "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room")]),a("li",null,"be part of an organization")],-1),d=a("p",null,[o("The Verifier only allows a user to login (with an existing account), meaning that an account has to be created on the "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room"),o(" or in the Wallet")],-1),l=[i,s,c,d];function _(h,u,p,f,m,g){return t(),n("div",null,l)}const v=e(r,[["render",_]]);export{b as __pageData,v as default}; +import{_ as e,c as n,o as t,m as a,a as o}from"./chunks/framework.CHPBlGxi.js";const b=JSON.parse('{"title":"Create an account and join an organization","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/1_join_org.md","filePath":"guides/3_verifier/1_join_org.md","lastUpdated":1715167532000}'),r={name:"guides/3_verifier/1_join_org.md"},i=a("h1",{id:"create-an-account-and-join-an-organization",tabindex:"-1"},[o("Create an account and join an organization "),a("a",{class:"header-anchor",href:"#create-an-account-and-join-an-organization","aria-label":'Permalink to "Create an account and join an organization"'},"​")],-1),s=a("p",null,"In order to use the Verifier app and the Verification Flow, the user is supposed to:",-1),c=a("ol",null,[a("li",null,[o("have an account on "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard")]),a("li",null,"be part of an organization")],-1),d=a("p",null,[o("The Verifier only allows a user to login (with an existing account), meaning that an account has to be created on the "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard"),o(" or in the Wallet")],-1),l=[i,s,c,d];function _(h,u,p,f,m,g){return t(),n("div",null,l)}const v=e(r,[["render",_]]);export{b as __pageData,v as default}; diff --git a/docs/pr-preview/pr-16/assets/guides_3_verifier_index.md.Tz8n2ga9.js b/docs/pr-preview/pr-16/assets/guides_3_verifier_index.md.Tz8n2ga9.js index b54ef3d..9c67713 100644 --- a/docs/pr-preview/pr-16/assets/guides_3_verifier_index.md.Tz8n2ga9.js +++ b/docs/pr-preview/pr-16/assets/guides_3_verifier_index.md.Tz8n2ga9.js @@ -1 +1 @@ -import{_ as t,c as a,o,m as e,a as r}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"βœ”οΈ Verifier App","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/index.md","filePath":"guides/3_verifier/index.md","lastUpdated":1715167532000}'),i={name:"guides/3_verifier/index.md"},n=e("h1",{id:"βœ”οΈ-verifier-app",tabindex:"-1"},[r("βœ”οΈ Verifier App "),e("a",{class:"header-anchor",href:"#βœ”οΈ-verifier-app","aria-label":'Permalink to "βœ”οΈ Verifier App"'},"​")],-1),s=e("p",null,[r("The "),e("a",{href:"https://github.com/ForkbombEu/verifier",target:"_blank",rel:"noreferrer"},"Verifier App "),r(" is an Android/iOS mobile app whose purpose is to start a "),e("strong",null,"Verification Flow"),r(".")],-1),d=e("p",null,[r("The Verifer App requires the user to have created an account (and ideally be part of an organization), so an account needs to be created on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room"),r(" or in the Wallet.")],-1),p=[n,s,d];function c(l,f,h,_,m,u){return o(),a("div",null,p)}const v=t(i,[["render",c]]);export{g as __pageData,v as default}; +import{_ as t,c as a,o,m as e,a as r}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"βœ”οΈ Verifier App","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/index.md","filePath":"guides/3_verifier/index.md","lastUpdated":1715167532000}'),i={name:"guides/3_verifier/index.md"},n=e("h1",{id:"βœ”οΈ-verifier-app",tabindex:"-1"},[r("βœ”οΈ Verifier App "),e("a",{class:"header-anchor",href:"#βœ”οΈ-verifier-app","aria-label":'Permalink to "βœ”οΈ Verifier App"'},"​")],-1),s=e("p",null,[r("The "),e("a",{href:"https://github.com/ForkbombEu/verifier",target:"_blank",rel:"noreferrer"},"Verifier App "),r(" is an Android/iOS mobile app whose purpose is to start a "),e("strong",null,"Verification Flow"),r(".")],-1),d=e("p",null,[r("The Verifer App requires the user to have created an account (and ideally be part of an organization), so an account needs to be created on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard"),r(" or in the Wallet.")],-1),p=[n,s,d];function c(l,f,h,_,m,u){return o(),a("div",null,p)}const v=t(i,[["render",c]]);export{g as __pageData,v as default}; diff --git a/docs/pr-preview/pr-16/assets/guides_3_verifier_index.md.Tz8n2ga9.lean.js b/docs/pr-preview/pr-16/assets/guides_3_verifier_index.md.Tz8n2ga9.lean.js index b54ef3d..9c67713 100644 --- a/docs/pr-preview/pr-16/assets/guides_3_verifier_index.md.Tz8n2ga9.lean.js +++ b/docs/pr-preview/pr-16/assets/guides_3_verifier_index.md.Tz8n2ga9.lean.js @@ -1 +1 @@ -import{_ as t,c as a,o,m as e,a as r}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"βœ”οΈ Verifier App","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/index.md","filePath":"guides/3_verifier/index.md","lastUpdated":1715167532000}'),i={name:"guides/3_verifier/index.md"},n=e("h1",{id:"βœ”οΈ-verifier-app",tabindex:"-1"},[r("βœ”οΈ Verifier App "),e("a",{class:"header-anchor",href:"#βœ”οΈ-verifier-app","aria-label":'Permalink to "βœ”οΈ Verifier App"'},"​")],-1),s=e("p",null,[r("The "),e("a",{href:"https://github.com/ForkbombEu/verifier",target:"_blank",rel:"noreferrer"},"Verifier App "),r(" is an Android/iOS mobile app whose purpose is to start a "),e("strong",null,"Verification Flow"),r(".")],-1),d=e("p",null,[r("The Verifer App requires the user to have created an account (and ideally be part of an organization), so an account needs to be created on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room"),r(" or in the Wallet.")],-1),p=[n,s,d];function c(l,f,h,_,m,u){return o(),a("div",null,p)}const v=t(i,[["render",c]]);export{g as __pageData,v as default}; +import{_ as t,c as a,o,m as e,a as r}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"βœ”οΈ Verifier App","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/index.md","filePath":"guides/3_verifier/index.md","lastUpdated":1715167532000}'),i={name:"guides/3_verifier/index.md"},n=e("h1",{id:"βœ”οΈ-verifier-app",tabindex:"-1"},[r("βœ”οΈ Verifier App "),e("a",{class:"header-anchor",href:"#βœ”οΈ-verifier-app","aria-label":'Permalink to "βœ”οΈ Verifier App"'},"​")],-1),s=e("p",null,[r("The "),e("a",{href:"https://github.com/ForkbombEu/verifier",target:"_blank",rel:"noreferrer"},"Verifier App "),r(" is an Android/iOS mobile app whose purpose is to start a "),e("strong",null,"Verification Flow"),r(".")],-1),d=e("p",null,[r("The Verifer App requires the user to have created an account (and ideally be part of an organization), so an account needs to be created on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard"),r(" or in the Wallet.")],-1),p=[n,s,d];function c(l,f,h,_,m,u){return o(),a("div",null,p)}const v=t(i,[["render",c]]);export{g as __pageData,v as default}; diff --git a/docs/pr-preview/pr-16/assets/guides_4_sysadmin_setup.md.BEbcAy0p.js b/docs/pr-preview/pr-16/assets/guides_4_sysadmin_setup.md.BEbcAy0p.js index 0e58c39..aefabeb 100644 --- a/docs/pr-preview/pr-16/assets/guides_4_sysadmin_setup.md.BEbcAy0p.js +++ b/docs/pr-preview/pr-16/assets/guides_4_sysadmin_setup.md.BEbcAy0p.js @@ -1,2 +1,2 @@ -import{_ as e,c as o,o as a,a3 as t}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"Setup the Dashboard","description":"","frontmatter":{},"headers":[],"relativePath":"guides/4_sysadmin/setup.md","filePath":"guides/4_sysadmin/setup.md","lastUpdated":1715168429000}'),s={name:"guides/4_sysadmin/setup.md"},i=t(`

Setup the Dashboard ​

for πŸ› οΈ System Administrator ​

For users who prefer full control over their infrastructure and data, Didroom supports on-premise deployment. Follow these steps to deploy the DIDroom Dashboard on your own infrastructure:

TIP

If you are unfamiliar with servers, devops and unix commands look also at the Software as a service section that will allow you to define a credential issuance flow in minutes! Without installing anything on your servers.

Checklist

Before starting please make sure you have a

  1. Git installed on your server
  2. Docker compose installed on your server
  3. DID admin domain/context as specified on dyne/W3C-DID

1. clone the repo ​

bash
git clone --recursive https://github.com/forkbombeu/signroom

WARNING

Pay attention at the --recursive that will clone also the sub repositories!

2. Run the Dashboard (Admin Panel and DIDroom Control Room) ​

bash
cd signroom
-docker compose up --build

This will run the DIDroom Dashboard which includes two interconnected web-applications:

  • Admin Panel: based on PocketBase, this application is accessible only to the sysadmin and it allows to configure and edit data structure and API configurations.
  • DIDroom Control Room: this the DIDroom web application accessible to all users, allows to manage credential issuance and verification flows and their deployment and the organizations

The two web applications run on two different ports and have different user accounts.

3. Log in onto the DIDroom Control Room ​

Go to:

http
http://localhost:4173/

Register a new uer or log in using the default user:

user: userA@example.org

pass: userAuserA

4. login onto to the Admin Panel ​

Go to:

http
http://localhost:8090/_

TIP

Pay attention at the final underscore, of the address

A default administrator user is created with the following user and pass:

user: admin@example.org

pass: adminadmin

5. Setup the DID service ​

DIDroom uses the Dyne's DID service as a public key infrastructure. You can choose to ask us (Forkbomb or Dyne.org) to provide you the admin data, or deploy Dyne's DID service on your server.

You can ask for your admin domain/context as specified on dyne/W3C-DID

Follow the video:

  1. login into the dashboard
  2. go on the features collection
  3. select the DID feature
  4. insert you admin data
`,33),n=[i];function r(l,d,h,p,c,u){return a(),o("div",null,n)}const b=e(s,[["render",r]]);export{g as __pageData,b as default}; +import{_ as e,c as o,o as a,a3 as t}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"Setup the Dashboard","description":"","frontmatter":{},"headers":[],"relativePath":"guides/4_sysadmin/setup.md","filePath":"guides/4_sysadmin/setup.md","lastUpdated":1715168429000}'),s={name:"guides/4_sysadmin/setup.md"},i=t(`

Setup the Dashboard ​

for πŸ› οΈ System Administrator ​

For users who prefer full control over their infrastructure and data, Didroom supports on-premise deployment. Follow these steps to deploy the DIDroom Dashboard on your own infrastructure:

TIP

If you are unfamiliar with servers, devops and unix commands look also at the Software as a service section that will allow you to define a credential issuance flow in minutes! Without installing anything on your servers.

Checklist

Before starting please make sure you have a

  1. Git installed on your server
  2. Docker compose installed on your server
  3. DID admin domain/context as specified on dyne/W3C-DID

1. clone the repo ​

bash
git clone --recursive https://github.com/forkbombeu/signroom

WARNING

Pay attention at the --recursive that will clone also the sub repositories!

2. Run the Dashboard (Admin Panel and DIDroom Dashboard) ​

bash
cd signroom
+docker compose up --build

This will run the DIDroom Dashboard which includes two interconnected web-applications:

  • Admin Panel: based on PocketBase, this application is accessible only to the sysadmin and it allows to configure and edit data structure and API configurations.
  • DIDroom Dashboard: this the DIDroom web application accessible to all users, allows to manage credential issuance and verification flows and their deployment and the organizations

The two web applications run on two different ports and have different user accounts.

3. Log in onto the DIDroom Dashboard ​

Go to:

http
http://localhost:4173/

Register a new uer or log in using the default user:

user: userA@example.org

pass: userAuserA

4. login onto to the Admin Panel ​

Go to:

http
http://localhost:8090/_

TIP

Pay attention at the final underscore, of the address

A default administrator user is created with the following user and pass:

user: admin@example.org

pass: adminadmin

5. Setup the DID service ​

DIDroom uses the Dyne's DID service as a public key infrastructure. You can choose to ask us (Forkbomb or Dyne.org) to provide you the admin data, or deploy Dyne's DID service on your server.

You can ask for your admin domain/context as specified on dyne/W3C-DID

Follow the video:

  1. login into the dashboard
  2. go on the features collection
  3. select the DID feature
  4. insert you admin data
`,33),n=[i];function r(l,d,h,p,c,u){return a(),o("div",null,n)}const b=e(s,[["render",r]]);export{g as __pageData,b as default}; diff --git a/docs/pr-preview/pr-16/assets/guides_6_components_keypairoom.md.BuLHkv71.js b/docs/pr-preview/pr-16/assets/guides_6_components_keypairoom.md.BuLHkv71.js index 2d7f775..3b4ecc6 100644 --- a/docs/pr-preview/pr-16/assets/guides_6_components_keypairoom.md.BuLHkv71.js +++ b/docs/pr-preview/pr-16/assets/guides_6_components_keypairoom.md.BuLHkv71.js @@ -1 +1 @@ -import{_ as e,c as t,o,a3 as r}from"./chunks/framework.CHPBlGxi.js";const y=JSON.parse('{"title":"Keypairoom: (re)generate your secret keys","description":"","frontmatter":{},"headers":[],"relativePath":"guides/6_components/keypairoom.md","filePath":"guides/6_components/keypairoom.md","lastUpdated":1716540162000}'),a={name:"guides/6_components/keypairoom.md"},s=r('

Keypairoom: (re)generate your secret keys ​

Keypairoom is component to generate and regenerate a keyring, containing multiple secret keys (along with the correspondet public keys) in a deterministic and private way.

The cryptographic part consists of multiple Zenroom scripts that allows you to generate a seed by answering to questions that (probably) only you can respond, namely "The challenges".

Privacy ​

The challenges are processed inside the client applications (the Wallet App or the browser where you opened the DIDroom Control Room. Note:

  • The Zenroom scripts processing the answers work offline.
  • Your answers are never communicated to any external service.
  • No one can reconstruct them based on their output: this is certain based on the math behind it, if you're curious you can read about it here.
  • The answers are not used to identify you in anyway, they are just some text that only you can write and belong to your past, so it should not change over time.

More about privacy ​

We hear you saying:

I don't want to answer any question I don't trust writing my personal data anywhere... what now?

So you don't want to write private data anywhere, cause you don't trust software security ever? We (the developers) understand you well and share your feelings πŸ˜ƒ

TLDR: answer using random text and save the seed!

If that's the case, no problem at all: you can just answer to the challenges with some random/junk text. After your secret keys are created, you are offered to store the seed: the seed is a piece of data, printed as a mnemonic phrase that will allow you to re-generate the same secret keys at any time.

What does a mmnemonic phrase look like? Like this:

mnemonic
expect cart barely fruit learn tortoise work essence guitar

If you log out from the wallet, or try to login onto a new device (or browser), you are given the option to paste your seed: therefore store your seed in a safe place, it will work forever, no matter what you answered in that challenges.

',15),n=[s];function i(l,c,p,h,u,d){return o(),t("div",null,n)}const g=e(a,[["render",i]]);export{y as __pageData,g as default}; +import{_ as e,c as t,o,a3 as r}from"./chunks/framework.CHPBlGxi.js";const y=JSON.parse('{"title":"Keypairoom: (re)generate your secret keys","description":"","frontmatter":{},"headers":[],"relativePath":"guides/6_components/keypairoom.md","filePath":"guides/6_components/keypairoom.md","lastUpdated":1716540162000}'),a={name:"guides/6_components/keypairoom.md"},s=r('

Keypairoom: (re)generate your secret keys ​

Keypairoom is component to generate and regenerate a keyring, containing multiple secret keys (along with the correspondet public keys) in a deterministic and private way.

The cryptographic part consists of multiple Zenroom scripts that allows you to generate a seed by answering to questions that (probably) only you can respond, namely "The challenges".

Privacy ​

The challenges are processed inside the client applications (the Wallet App or the browser where you opened the DIDroom Dashboard. Note:

  • The Zenroom scripts processing the answers work offline.
  • Your answers are never communicated to any external service.
  • No one can reconstruct them based on their output: this is certain based on the math behind it, if you're curious you can read about it here.
  • The answers are not used to identify you in anyway, they are just some text that only you can write and belong to your past, so it should not change over time.

More about privacy ​

We hear you saying:

I don't want to answer any question I don't trust writing my personal data anywhere... what now?

So you don't want to write private data anywhere, cause you don't trust software security ever? We (the developers) understand you well and share your feelings πŸ˜ƒ

TLDR: answer using random text and save the seed!

If that's the case, no problem at all: you can just answer to the challenges with some random/junk text. After your secret keys are created, you are offered to store the seed: the seed is a piece of data, printed as a mnemonic phrase that will allow you to re-generate the same secret keys at any time.

What does a mmnemonic phrase look like? Like this:

mnemonic
expect cart barely fruit learn tortoise work essence guitar

If you log out from the wallet, or try to login onto a new device (or browser), you are given the option to paste your seed: therefore store your seed in a safe place, it will work forever, no matter what you answered in that challenges.

',15),n=[s];function i(l,c,p,h,u,d){return o(),t("div",null,n)}const g=e(a,[["render",i]]);export{y as __pageData,g as default}; diff --git a/docs/pr-preview/pr-16/assets/intro.md.C-Y17fUh.js b/docs/pr-preview/pr-16/assets/intro.md.C-Y17fUh.js index f0bde25..3ab2b70 100644 --- a/docs/pr-preview/pr-16/assets/intro.md.C-Y17fUh.js +++ b/docs/pr-preview/pr-16/assets/intro.md.C-Y17fUh.js @@ -1 +1 @@ -import{_ as e,c as i,o as t,a3 as o}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"πŸ“– Introduction","description":"","frontmatter":{},"headers":[],"relativePath":"intro.md","filePath":"intro.md","lastUpdated":1713910977000}'),r={name:"intro.md"},n=o('

πŸ“– Introduction ​

Welcome to Didroom – your gateway to decentralized identity management and secure communication. Didroom empowers individuals and organizations to take control of their digital identities while ensuring privacy and security. Whether you're looking to streamline identity verification processes, enhance data security, or enable secure communication channels, Didroom provides the tools and infrastructure you need.

You can quickly test, plug and deploy by using our service at dashboard.didroom.com or install the whole ecosystem on-premise on your infrastructure. For detailed instructions please refer to the Get started guide.

How It Works ​

Didroom offers a seamless and intuitive experience for managing decentralized identities and secure communication. Here's how it works:

  • Define services and credentials: Via the Didroom Control Room, users can define services, credentials, and claims services according to their specific requirements.

  • Generate Openid4VCI microservices: Users can generate Openid4VCI microservices directly from the bloom using the Control Room, simplifying the process of creating and deploying identity verification services.

  • Plug custom business logic: Didroom allows users to add custom business logic to their applications, tailoring the functionality to meet their unique needs and requirements.

  • Integrate pre-existing microservices: Users can seamlessly integrate their microservices into their existing systems or applications, enhancing functionality and interoperability.

  • Deploy and control microservices nodes: Didroom enables users to deploy and control microservices nodes directly from the Control Room, streamlining the deployment and management process.

  • Enhance your business logic with natural language smart contracts (Zencode): With Didroom, users can enhance their business logic with natural English smart contracts, enabling advanced automation and decision-making capabilities.

  • Whitelabel wallet and verifier apps: To interact with your services individuals need a wallet app that we provide for whitelabeling. Same a verifier app for indivisuals that want to verify credentials.

Features ​

  • Compliance: Didroom is compliant with industry standards and regulations, including EUDI-ARF, ensuring adherence to data protection laws and regulations.
  • End-to-End encryption: Secure communication is facilitated through end-to-end encryption, ensuring that messages and data remain private and confidential.
  • Decentralized identity management: Didroom enables users to create, control, and manage their digital identities in a decentralized manner, eliminating reliance on central authorities.
  • Customizable and extensible: Didroom is highly customizable and extensible, allowing organizations to tailor the platform to their specific needs and integrate with existing systems seamlessly.

Integration and flexibility ​

Didroom is designed to be seamlessly integrated into third-party solutions and environments. Its modular architecture allows for easy integration with existing microservices or other identity management systems. Whether you need to use Didroom as a standalone solution or integrate it into your existing infrastructure, Didroom provides the flexibility and adaptability you need.

Architectural overview ​

The Didroom ecosystem consists of a modular architecture comprising core technologies and components

  1. Zenroom
  2. Slangroom
  3. No-code-room
  4. Dyne.org Decentralized Identifiers (DID) Service

these provide the foundational elements for identity management and cryptographic operations.

  • Components:

πŸ“‘

For detailed description of each component please refer to πŸ’‘ The Solution

  1. Didroom Control Room / Dashboard
  2. Didroom Microservices
  3. Wallet Holder App
  4. Verifier App

there offer user interfaces and functionalities for managing identities, communication, and verification.

Let's start! ​

Sure, let's 🏁 Get started!

',21),a=[n];function s(l,c,d,m,u,h){return t(),i("div",null,a)}const f=e(r,[["render",s]]);export{g as __pageData,f as default}; +import{_ as e,c as i,o as t,a3 as o}from"./chunks/framework.CHPBlGxi.js";const g=JSON.parse('{"title":"πŸ“– Introduction","description":"","frontmatter":{},"headers":[],"relativePath":"intro.md","filePath":"intro.md","lastUpdated":1713910977000}'),r={name:"intro.md"},n=o('

πŸ“– Introduction ​

Welcome to Didroom – your gateway to decentralized identity management and secure communication. Didroom empowers individuals and organizations to take control of their digital identities while ensuring privacy and security. Whether you're looking to streamline identity verification processes, enhance data security, or enable secure communication channels, Didroom provides the tools and infrastructure you need.

You can quickly test, plug and deploy by using our service at dashboard.didroom.com or install the whole ecosystem on-premise on your infrastructure. For detailed instructions please refer to the Get started guide.

How It Works ​

Didroom offers a seamless and intuitive experience for managing decentralized identities and secure communication. Here's how it works:

  • Define services and credentials: Via the DIDroom Dashboard, users can define services, credentials, and claims services according to their specific requirements.

  • Generate Openid4VCI microservices: Users can generate Openid4VCI microservices directly from the bloom using the Control Room, simplifying the process of creating and deploying identity verification services.

  • Plug custom business logic: Didroom allows users to add custom business logic to their applications, tailoring the functionality to meet their unique needs and requirements.

  • Integrate pre-existing microservices: Users can seamlessly integrate their microservices into their existing systems or applications, enhancing functionality and interoperability.

  • Deploy and control microservices nodes: Didroom enables users to deploy and control microservices nodes directly from the Control Room, streamlining the deployment and management process.

  • Enhance your business logic with natural language smart contracts (Zencode): With Didroom, users can enhance their business logic with natural English smart contracts, enabling advanced automation and decision-making capabilities.

  • Whitelabel wallet and verifier apps: To interact with your services individuals need a wallet app that we provide for whitelabeling. Same a verifier app for indivisuals that want to verify credentials.

Features ​

  • Compliance: Didroom is compliant with industry standards and regulations, including EUDI-ARF, ensuring adherence to data protection laws and regulations.
  • End-to-End encryption: Secure communication is facilitated through end-to-end encryption, ensuring that messages and data remain private and confidential.
  • Decentralized identity management: Didroom enables users to create, control, and manage their digital identities in a decentralized manner, eliminating reliance on central authorities.
  • Customizable and extensible: Didroom is highly customizable and extensible, allowing organizations to tailor the platform to their specific needs and integrate with existing systems seamlessly.

Integration and flexibility ​

Didroom is designed to be seamlessly integrated into third-party solutions and environments. Its modular architecture allows for easy integration with existing microservices or other identity management systems. Whether you need to use Didroom as a standalone solution or integrate it into your existing infrastructure, Didroom provides the flexibility and adaptability you need.

Architectural overview ​

The Didroom ecosystem consists of a modular architecture comprising core technologies and components

  1. Zenroom
  2. Slangroom
  3. No-code-room
  4. Dyne.org Decentralized Identifiers (DID) Service

these provide the foundational elements for identity management and cryptographic operations.

  • Components:

πŸ“‘

For detailed description of each component please refer to πŸ’‘ The Solution

  1. DIDroom Dashboard / Dashboard
  2. Didroom Microservices
  3. Wallet Holder App
  4. Verifier App

there offer user interfaces and functionalities for managing identities, communication, and verification.

Let's start! ​

Sure, let's 🏁 Get started!

',21),a=[n];function s(l,c,d,m,u,h){return t(),i("div",null,a)}const f=e(r,[["render",s]]);export{g as __pageData,f as default}; diff --git a/docs/pr-preview/pr-16/assets/solution.md.BkQPubXR.js b/docs/pr-preview/pr-16/assets/solution.md.BkQPubXR.js index e5dd29d..7eb9352 100644 --- a/docs/pr-preview/pr-16/assets/solution.md.BkQPubXR.js +++ b/docs/pr-preview/pr-16/assets/solution.md.BkQPubXR.js @@ -1 +1 @@ -import{_ as e,c as o,o as t,a3 as i}from"./chunks/framework.CHPBlGxi.js";const b=JSON.parse('{"title":"πŸ’‘ The Solution","description":"","frontmatter":{},"headers":[],"relativePath":"solution.md","filePath":"solution.md","lastUpdated":1713910977000}'),r={name:"solution.md"},a=i('

πŸ’‘ The Solution ​

Our solution is divided into different repositories, each focusing on a specific component. This modular approach allows us to maintain flexibility and scalability, enabling users to customize and integrate the solution according to their specific needs and requirements.

DIDroom Control Room (Dashboard) ​

The DIDroom Control Room/Dashboard serves as the central hub for managing decentralized identity solutions. It provides a user-friendly interface for configuring settings, monitoring performance, and accessing key functionalities.

The core features of the Control Room are:

  • Creation of credential issuance and verification flows
  • Deployment and provisioning of the DIDroom Microservices
  • Creation of organizations, assigning of privileges to different users
  • The admin panel of the Control Room offers:
    • User management
    • Setup of web-hooks and automation flows
    • Customization of the Control Room menu entries

DIDroom Mobile libs (Mobile Zencode) ​

A collection of mobile library, Zencode Mobile holds all the business logic and contracts shared between the different components of the DIDroom Solution. It serves as a centralized repository for managing and updating the core business logic used across various mobile applications and components.

RESOURCES

GitHub

DIDroom microservices ​

Those are the technological core of the solution: those components offer cryptographic functions as well as transport protocols. The microservices are completely isolated from the Dashboard, meaning that:

  • The code is hosted in a separated repo
  • The microservices can run independently from the Dashboard
  • Each microservice has its own secret keys and DID to identify them: those are generated by the microservice at its first provisioning

DIDroom microservices are generated using No-code-room (NCR) and utilize the Zencode Mobile repository to create three different microservices:

  • Credential Issuers: These microservices are compliant with Openid4VCI standards and handle the issuance of credentials.
  • Authorization Servers: These microservices implement OAuth2 and work seamlessly with our DID Service for authentication and authorization.
  • Relying Party: These microservices are compliant with Openid4VP standards and act as relying parties for authentication and authorization.

RESOURCES

GitHub

Wallet Holder App ​

The Wallet Holder App offers a secure and user-friendly interface for managing decentralized identities and digital credentials. It allows users to store, view, and share their identity information with ease inside a TEE (Trusted execution environment) directly on citizens devices.

Verifier App ​

The Verifier App provides tools for verifying the authenticity and validity of decentralized identities and digital credentials. It enables organizations to validate identity claims and ensure compliance with regulatory requirements.

DIDroom web components ​

DIDroom Web Components hold all the UI web components used across all the projects to ensure a coherent Atomic design and allow for white-labeling.

',25),s=[a];function n(l,c,d,h,m,p){return t(),o("div",null,s)}const f=e(r,[["render",n]]);export{b as __pageData,f as default}; +import{_ as e,c as o,o as t,a3 as i}from"./chunks/framework.CHPBlGxi.js";const b=JSON.parse('{"title":"πŸ’‘ The Solution","description":"","frontmatter":{},"headers":[],"relativePath":"solution.md","filePath":"solution.md","lastUpdated":1713910977000}'),r={name:"solution.md"},a=i('

πŸ’‘ The Solution ​

Our solution is divided into different repositories, each focusing on a specific component. This modular approach allows us to maintain flexibility and scalability, enabling users to customize and integrate the solution according to their specific needs and requirements.

DIDroom Dashboard (Dashboard) ​

The DIDroom Dashboard/Dashboard serves as the central hub for managing decentralized identity solutions. It provides a user-friendly interface for configuring settings, monitoring performance, and accessing key functionalities.

The core features of the Control Room are:

  • Creation of credential issuance and verification flows
  • Deployment and provisioning of the DIDroom Microservices
  • Creation of organizations, assigning of privileges to different users
  • The admin panel of the Control Room offers:
    • User management
    • Setup of web-hooks and automation flows
    • Customization of the Control Room menu entries

DIDroom Mobile libs (Mobile Zencode) ​

A collection of mobile library, Zencode Mobile holds all the business logic and contracts shared between the different components of the DIDroom Solution. It serves as a centralized repository for managing and updating the core business logic used across various mobile applications and components.

RESOURCES

GitHub

DIDroom microservices ​

Those are the technological core of the solution: those components offer cryptographic functions as well as transport protocols. The microservices are completely isolated from the Dashboard, meaning that:

  • The code is hosted in a separated repo
  • The microservices can run independently from the Dashboard
  • Each microservice has its own secret keys and DID to identify them: those are generated by the microservice at its first provisioning

DIDroom microservices are generated using No-code-room (NCR) and utilize the Zencode Mobile repository to create three different microservices:

  • Credential Issuers: These microservices are compliant with Openid4VCI standards and handle the issuance of credentials.
  • Authorization Servers: These microservices implement OAuth2 and work seamlessly with our DID Service for authentication and authorization.
  • Relying Party: These microservices are compliant with Openid4VP standards and act as relying parties for authentication and authorization.

RESOURCES

GitHub

Wallet Holder App ​

The Wallet Holder App offers a secure and user-friendly interface for managing decentralized identities and digital credentials. It allows users to store, view, and share their identity information with ease inside a TEE (Trusted execution environment) directly on citizens devices.

Verifier App ​

The Verifier App provides tools for verifying the authenticity and validity of decentralized identities and digital credentials. It enables organizations to validate identity claims and ensure compliance with regulatory requirements.

DIDroom web components ​

DIDroom Web Components hold all the UI web components used across all the projects to ensure a coherent Atomic design and allow for white-labeling.

',25),s=[a];function n(l,c,d,h,m,p){return t(),o("div",null,s)}const f=e(r,[["render",n]]);export{b as __pageData,f as default}; diff --git a/docs/pr-preview/pr-16/core-technologies.html b/docs/pr-preview/pr-16/core-technologies.html index 8ee9242..b9e2a49 100644 --- a/docs/pr-preview/pr-16/core-technologies.html +++ b/docs/pr-preview/pr-16/core-technologies.html @@ -17,7 +17,7 @@ -
Skip to content

πŸ—οΈ Core Technologies ​

πŸ” Zenroom ​

Zenroom is responsible for all underlying cryptographic operations within the Didroom ecosystem. It provides a secure execution environment for cryptographic operations and smart contracts, ensuring privacy, security, and integrity in digital interactions. Notably, Zenroom runs isomorphically on the web, mobile, and servers across various platforms in a deterministic way.

πŸ“œ Slangroom ​

Slangroom enhances the Zencode language of Zenroom by allowing the addition of plugins. These plugins extend the functionality of Zencode by enabling actions that do not necessarily need to be performed within virtual machines. Slangroom's approach is super standard, making it easy to add custom functionalities within the Zencode natural language. Additionally, Slangroom is capable of running over web pages using WebAssembly.

πŸ› οΈ No-code-room (NCR) ​

No-code-room is a Single Executable Application (SEA) for Linux. It takes a filesystem with .zen (Zencode/Slangroom) contracts and creates API microservices using live-directory routing. NCR seamlessly generates REST services that are auto-documented with OpenAPI. Additionally, it creates small graphic interfaces on the fly, referred to as applets.

RESOURCES

GitHub

πŸ”— Dyne.org Decentralized Identifiers (DID) Service ​

In 2022, Dyne.org implemented a W3C-DID method approved by the W3C governing board and included in the official DID method list. The DID service supports federation and provides tools for the creation, resolution, and management of decentralized identifiers (DIDs). It includes support for ECDSA, EDDSA, Schnorr, Ethereum address, as well as a Dilithium quantum-proof public key.

+
Skip to content

πŸ—οΈ Core Technologies ​

πŸ” Zenroom ​

Zenroom is responsible for all underlying cryptographic operations within the Didroom ecosystem. It provides a secure execution environment for cryptographic operations and smart contracts, ensuring privacy, security, and integrity in digital interactions. Notably, Zenroom runs isomorphically on the web, mobile, and servers across various platforms in a deterministic way.

πŸ“œ Slangroom ​

Slangroom enhances the Zencode language of Zenroom by allowing the addition of plugins. These plugins extend the functionality of Zencode by enabling actions that do not necessarily need to be performed within virtual machines. Slangroom's approach is super standard, making it easy to add custom functionalities within the Zencode natural language. Additionally, Slangroom is capable of running over web pages using WebAssembly.

πŸ› οΈ No-code-room (NCR) ​

No-code-room is a Single Executable Application (SEA) for Linux. It takes a filesystem with .zen (Zencode/Slangroom) contracts and creates API microservices using live-directory routing. NCR seamlessly generates REST services that are auto-documented with OpenAPI. Additionally, it creates small graphic interfaces on the fly, referred to as applets.

RESOURCES

GitHub

πŸ”— Dyne.org Decentralized Identifiers (DID) Service ​

In 2022, Dyne.org implemented a W3C-DID method approved by the W3C governing board and included in the official DID method list. The DID service supports federation and provides tools for the creation, resolution, and management of decentralized identifiers (DIDs). It includes support for ECDSA, EDDSA, Schnorr, Ethereum address, as well as a Dilithium quantum-proof public key.

diff --git a/docs/pr-preview/pr-16/get_started.html b/docs/pr-preview/pr-16/get_started.html index de378af..8fefd00 100644 --- a/docs/pr-preview/pr-16/get_started.html +++ b/docs/pr-preview/pr-16/get_started.html @@ -17,7 +17,7 @@ -
Skip to content

🏁 Get started ​

Welcome to the Didroom Get Started guide! πŸš€ We're thrilled to have you embark on this journey with us. Whether you're a seasoned system administrator, a savvy organization administrator, an enthusiastic wallet holder, or a meticulous verifier, this section is tailor-made to provide you with comprehensive, step-by-step instructions crafted specifically for your role within the Didroom ecosystem.

πŸ’œ

We assume you're already familiar with Didroom's solution, its components and how they works.

If it's not the case, please refer to the introductory section for an overview.

Below, you'll find detailed descriptions of each guide, carefully curated to empower you with the knowledge and tools you need to navigate the world of decentralized identity management πŸ”


System administrators

For folks that wants to deploy and manage the infrastructure that powers Didroom.

Organization administrators

For folks that wants to oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities.

Wallet holders

For individuals that wants to use the Wallet Holder App to manage their decentralized identities and digital credentials securely. Here we walks you through the process of installing and using the Wallet Holder App to store, view, and share identity information with ease.

Verifiers

For individuals that wants to utilize the Verifier App to verify the authenticity and validity of decentralized identities and digital credentials. Here we outlines how to install and use the Verifier App to validate identity claims and ensure compliance with regulatory requirements.

+
Skip to content

🏁 Get started ​

Welcome to the Didroom Get Started guide! πŸš€ We're thrilled to have you embark on this journey with us. Whether you're a seasoned system administrator, a savvy organization administrator, an enthusiastic wallet holder, or a meticulous verifier, this section is tailor-made to provide you with comprehensive, step-by-step instructions crafted specifically for your role within the Didroom ecosystem.

πŸ’œ

We assume you're already familiar with Didroom's solution, its components and how they works.

If it's not the case, please refer to the introductory section for an overview.

Below, you'll find detailed descriptions of each guide, carefully curated to empower you with the knowledge and tools you need to navigate the world of decentralized identity management πŸ”


System administrators

For folks that wants to deploy and manage the infrastructure that powers Didroom.

Organization administrators

For folks that wants to oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities.

Wallet holders

For individuals that wants to use the Wallet Holder App to manage their decentralized identities and digital credentials securely. Here we walks you through the process of installing and using the Wallet Holder App to store, view, and share identity information with ease.

Verifiers

For individuals that wants to utilize the Verifier App to verify the authenticity and validity of decentralized identities and digital credentials. Here we outlines how to install and use the Verifier App to validate identity claims and ensure compliance with regulatory requirements.

diff --git a/docs/pr-preview/pr-16/guides/1_orgadmin/auth_server.html b/docs/pr-preview/pr-16/guides/1_orgadmin/auth_server.html index 284695b..2167ae8 100644 --- a/docs/pr-preview/pr-16/guides/1_orgadmin/auth_server.html +++ b/docs/pr-preview/pr-16/guides/1_orgadmin/auth_server.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-16/guides/1_orgadmin/create.html b/docs/pr-preview/pr-16/guides/1_orgadmin/create.html index c4e9570..369cc15 100644 --- a/docs/pr-preview/pr-16/guides/1_orgadmin/create.html +++ b/docs/pr-preview/pr-16/guides/1_orgadmin/create.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-16/guides/1_orgadmin/credential_issuer.html b/docs/pr-preview/pr-16/guides/1_orgadmin/credential_issuer.html index 3347c1d..d708c41 100644 --- a/docs/pr-preview/pr-16/guides/1_orgadmin/credential_issuer.html +++ b/docs/pr-preview/pr-16/guides/1_orgadmin/credential_issuer.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-16/guides/1_orgadmin/index.html b/docs/pr-preview/pr-16/guides/1_orgadmin/index.html index cfdfb5c..ac0c8f1 100644 --- a/docs/pr-preview/pr-16/guides/1_orgadmin/index.html +++ b/docs/pr-preview/pr-16/guides/1_orgadmin/index.html @@ -3,7 +3,7 @@ - πŸ‘©β€βš–οΈ DIDroom Control Room | Didroom ecosystem + πŸ‘©β€βš–οΈ DIDroom Dashboard | Didroom ecosystem @@ -17,7 +17,7 @@ -
Skip to content

πŸ‘©β€βš–οΈ DIDroom Control Room ​

Welcome, System Administrator! This guide provides step-by-step instructions for oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities.

Create an organization ​

Setup a credential issuer metadata ​

Setup an authorization server metadata ​

Create a fully working credential issuing flow ​

+
Skip to content

πŸ‘©β€βš–οΈ DIDroom Dashboard ​

Welcome, System Administrator! This guide provides step-by-step instructions for oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities.

Create an organization ​

Setup a credential issuer metadata ​

Setup an authorization server metadata ​

Create a fully working credential issuing flow ​

diff --git a/docs/pr-preview/pr-16/guides/1_orgadmin/issuance_flow.html b/docs/pr-preview/pr-16/guides/1_orgadmin/issuance_flow.html index a99a9fe..e342172 100644 --- a/docs/pr-preview/pr-16/guides/1_orgadmin/issuance_flow.html +++ b/docs/pr-preview/pr-16/guides/1_orgadmin/issuance_flow.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-16/guides/2_wallet/1_register.html b/docs/pr-preview/pr-16/guides/2_wallet/1_register.html index e6252cf..5832edc 100644 --- a/docs/pr-preview/pr-16/guides/2_wallet/1_register.html +++ b/docs/pr-preview/pr-16/guides/2_wallet/1_register.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-16/guides/2_wallet/2_join_org.html b/docs/pr-preview/pr-16/guides/2_wallet/2_join_org.html index f42ccdd..b82138e 100644 --- a/docs/pr-preview/pr-16/guides/2_wallet/2_join_org.html +++ b/docs/pr-preview/pr-16/guides/2_wallet/2_join_org.html @@ -17,7 +17,7 @@ -
Skip to content

Join organization ​

Ideally you'd want to join an organization after you created an account on the wallet. Managing users in organization is happening in the DIDroom Control Room, there are multiple ways to do that:

  • You can request to join an organization from My organizations > Join an organization
  • As organization manager you can invite a user to join, from the organization page, go to Members > Add member

Member of an organization ​

Once you have joined an organization you will see in your Wallet's home page, the list of the credentials that the organization is offering. Meaning that you can click on the credential's card to request it.

+
Skip to content

Join organization ​

Ideally you'd want to join an organization after you created an account on the wallet. Managing users in organization is happening in the DIDroom Dashboard, there are multiple ways to do that:

  • You can request to join an organization from My organizations > Join an organization
  • As organization manager you can invite a user to join, from the organization page, go to Members > Add member

Member of an organization ​

Once you have joined an organization you will see in your Wallet's home page, the list of the credentials that the organization is offering. Meaning that you can click on the credential's card to request it.

diff --git a/docs/pr-preview/pr-16/guides/2_wallet/3_get_credential.html b/docs/pr-preview/pr-16/guides/2_wallet/3_get_credential.html index 398f657..0ef61b5 100644 --- a/docs/pr-preview/pr-16/guides/2_wallet/3_get_credential.html +++ b/docs/pr-preview/pr-16/guides/2_wallet/3_get_credential.html @@ -17,7 +17,7 @@ -
Skip to content

Request a credential ​

A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer.

After you have created an account and logged in, you can request a credential in multiple ways:

  • From the Wallet's home page: you can request all the credentials that have been created as "public" in the DIDroom Control Room.
  • By scanning a QR-Code: you can re-quest a credential. The Wallet is compatible with the OpenID4VCI standard, so you should be able to request (and receive) credentials also from Credential Issuers which are setup or connected to DIDroom.

Your credentials ​

You can browse the credentials you received in the Wallet page of the Wallet (D'Oh!), they will be listed as cards and show you the issuer that produced them, their expiry and descriptions.

+
Skip to content

Request a credential ​

A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer.

After you have created an account and logged in, you can request a credential in multiple ways:

  • From the Wallet's home page: you can request all the credentials that have been created as "public" in the DIDroom Dashboard.
  • By scanning a QR-Code: you can re-quest a credential. The Wallet is compatible with the OpenID4VCI standard, so you should be able to request (and receive) credentials also from Credential Issuers which are setup or connected to DIDroom.

Your credentials ​

You can browse the credentials you received in the Wallet page of the Wallet (D'Oh!), they will be listed as cards and show you the issuer that produced them, their expiry and descriptions.

diff --git a/docs/pr-preview/pr-16/guides/2_wallet/4_present_credential.html b/docs/pr-preview/pr-16/guides/2_wallet/4_present_credential.html index cd52131..dab335d 100644 --- a/docs/pr-preview/pr-16/guides/2_wallet/4_present_credential.html +++ b/docs/pr-preview/pr-16/guides/2_wallet/4_present_credential.html @@ -17,7 +17,7 @@ -
Skip to content

Present a credential ​

A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer.

The purpose of having a credential is to able to prove the claims to someone in a secure and private way. In order to prove the claims, you will need to present the credential, the term 'present' has technical implication that involve:

  • Cryptographic transformations applied to the credential in order to produce a Verifiable Presentation
  • The communication of the Verifiable Presentation to an application or microservice (called Relying Party) that will verify the claims

Those steps (among with others that we omit for simplicity) occur in the Verification Flow.

The Verification Flow ​

The Verification Flow is initiated by a Verifier, meaning a user equipped with the Verifier App and the following happens:

  1. The Verifier App produces a QR-Code
  2. The user holding the Wallet App, opens QR-Code reader and scans the QR-Code
  3. The Wallet App reads the QR-Code, reads the request of the Verifier and search through list of obtained credentials to see if any of them matches the request.
  4. If a credential is found, that matches the request of the Verifier, than a Verifiable Presentation is produced and sent to Relying Party
  5. If the verification of the Verifiable Presentation is successful (or fails), a notification will appear in both the Wallet and Verififer App
+
Skip to content

Present a credential ​

A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer.

The purpose of having a credential is to able to prove the claims to someone in a secure and private way. In order to prove the claims, you will need to present the credential, the term 'present' has technical implication that involve:

  • Cryptographic transformations applied to the credential in order to produce a Verifiable Presentation
  • The communication of the Verifiable Presentation to an application or microservice (called Relying Party) that will verify the claims

Those steps (among with others that we omit for simplicity) occur in the Verification Flow.

The Verification Flow ​

The Verification Flow is initiated by a Verifier, meaning a user equipped with the Verifier App and the following happens:

  1. The Verifier App produces a QR-Code
  2. The user holding the Wallet App, opens QR-Code reader and scans the QR-Code
  3. The Wallet App reads the QR-Code, reads the request of the Verifier and search through list of obtained credentials to see if any of them matches the request.
  4. If a credential is found, that matches the request of the Verifier, than a Verifiable Presentation is produced and sent to Relying Party
  5. If the verification of the Verifiable Presentation is successful (or fails), a notification will appear in both the Wallet and Verififer App
diff --git a/docs/pr-preview/pr-16/guides/2_wallet/5_preferences.html b/docs/pr-preview/pr-16/guides/2_wallet/5_preferences.html index fedeba6..996b57d 100644 --- a/docs/pr-preview/pr-16/guides/2_wallet/5_preferences.html +++ b/docs/pr-preview/pr-16/guides/2_wallet/5_preferences.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-16/guides/2_wallet/index.html b/docs/pr-preview/pr-16/guides/2_wallet/index.html index 95137c8..7e6afb0 100644 --- a/docs/pr-preview/pr-16/guides/2_wallet/index.html +++ b/docs/pr-preview/pr-16/guides/2_wallet/index.html @@ -17,7 +17,7 @@ -
Skip to content

πŸ†” Wallet App ​

The Wallet App is an Android/iOS mobile app whose purpose is to request and present credentials.

The Wallet App allows the user to creat an account and the same account can be used to login onto the DIDroom Control Room.

Features ​

Once you login, you can:

  • Select a credential to request, from the list you can see in the Wallet's home. The credentials that you see listed here, depend on what organization(s) your part of.
  • Scan a QR code to receive a credential
  • Scan a QR code (from the Verifier App) to present a credential.
+
Skip to content

πŸ†” Wallet App ​

The Wallet App is an Android/iOS mobile app whose purpose is to request and present credentials.

The Wallet App allows the user to creat an account and the same account can be used to login onto the DIDroom Dashboard.

Features ​

Once you login, you can:

  • Select a credential to request, from the list you can see in the Wallet's home. The credentials that you see listed here, depend on what organization(s) your part of.
  • Scan a QR code to receive a credential
  • Scan a QR code (from the Verifier App) to present a credential.
diff --git a/docs/pr-preview/pr-16/guides/3_verifier/1_join_org.html b/docs/pr-preview/pr-16/guides/3_verifier/1_join_org.html index 1bd9438..ba99f6c 100644 --- a/docs/pr-preview/pr-16/guides/3_verifier/1_join_org.html +++ b/docs/pr-preview/pr-16/guides/3_verifier/1_join_org.html @@ -17,7 +17,7 @@ -
Skip to content

Create an account and join an organization ​

In order to use the Verifier app and the Verification Flow, the user is supposed to:

  1. have an account on DIDroom Control Room
  2. be part of an organization

The Verifier only allows a user to login (with an existing account), meaning that an account has to be created on the DIDroom Control Room or in the Wallet

+
Skip to content

Create an account and join an organization ​

In order to use the Verifier app and the Verification Flow, the user is supposed to:

  1. have an account on DIDroom Dashboard
  2. be part of an organization

The Verifier only allows a user to login (with an existing account), meaning that an account has to be created on the DIDroom Dashboard or in the Wallet

diff --git a/docs/pr-preview/pr-16/guides/3_verifier/2_verification_flow.html b/docs/pr-preview/pr-16/guides/3_verifier/2_verification_flow.html index a61fe68..c147b66 100644 --- a/docs/pr-preview/pr-16/guides/3_verifier/2_verification_flow.html +++ b/docs/pr-preview/pr-16/guides/3_verifier/2_verification_flow.html @@ -17,7 +17,7 @@ -
Skip to content

Start a Verification Flow ​

After you logged in the Verifier, you will be presented with a list Verification Flows, you can run. The flows you see depend on the organization(s) you are member of.

To start a Verification Flow just click the one you want to start from the list: a QR code with a session ID should appear in the next page.

+
Skip to content

Start a Verification Flow ​

After you logged in the Verifier, you will be presented with a list Verification Flows, you can run. The flows you see depend on the organization(s) you are member of.

To start a Verification Flow just click the one you want to start from the list: a QR code with a session ID should appear in the next page.

diff --git a/docs/pr-preview/pr-16/guides/3_verifier/3_verify.html b/docs/pr-preview/pr-16/guides/3_verifier/3_verify.html index 91ee1df..49cdfca 100644 --- a/docs/pr-preview/pr-16/guides/3_verifier/3_verify.html +++ b/docs/pr-preview/pr-16/guides/3_verifier/3_verify.html @@ -17,7 +17,7 @@ -
Skip to content

Verification: Success or Failure ​

The Verification Flow is active for some time, during this time a user holding a Wallet can scan the QR Code generated by the Verifier. Scanning the QR will trigger the credential presentation to the Reying Party (an external microservice that verifies the credential).

The result can be:

  • Success: if the Relying Party returns a success result before the expiration
  • Failure: if the Relying Party returns a failure or if nothing happens before the expiration
+
Skip to content

Verification: Success or Failure ​

The Verification Flow is active for some time, during this time a user holding a Wallet can scan the QR Code generated by the Verifier. Scanning the QR will trigger the credential presentation to the Reying Party (an external microservice that verifies the credential).

The result can be:

  • Success: if the Relying Party returns a success result before the expiration
  • Failure: if the Relying Party returns a failure or if nothing happens before the expiration
diff --git a/docs/pr-preview/pr-16/guides/3_verifier/index.html b/docs/pr-preview/pr-16/guides/3_verifier/index.html index 09a21ef..d4d750d 100644 --- a/docs/pr-preview/pr-16/guides/3_verifier/index.html +++ b/docs/pr-preview/pr-16/guides/3_verifier/index.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-16/guides/4_sysadmin/deploy_microservices.html b/docs/pr-preview/pr-16/guides/4_sysadmin/deploy_microservices.html index 89f25f3..4bda078 100644 --- a/docs/pr-preview/pr-16/guides/4_sysadmin/deploy_microservices.html +++ b/docs/pr-preview/pr-16/guides/4_sysadmin/deploy_microservices.html @@ -17,7 +17,7 @@ -
Skip to content

Deploy microservices ​

for πŸ› οΈ System Administrator ​

Preparation ​

  • Register a domain name, let's say: microservices.myapp.domain

  • Setup a linux server, configure SSL and make sure the server is resolved at: https://microservices.myapp.domain/

  • Make sure you have all the commands installed, type: sudo apt install make wget jq git -y

Provision and download the Microservices ​

  • Go to https://dashboard.didroom.com and create an issuance flow
  • From the issuance flow page, download the microservices.zip file by"Download microservices"
  • The issuance flow page should look like this:

issuance_flow

Deploy the Microservices ​

  • Copy the microservices.zip file on the server and unzip it, it should create the folder /DIDroom_microservices (which maybe will be inside /microservices...(

  • type: cd DIDroom_microservices

  • type: make up (this command generates the secret keys for the microservices, and registers a DID for each of them)

From that moment, you should have the microservices (authz_server and credential_issuer) running and configured.

Receive your first credential ​

  • install the wallet on an android phone from here: https://github.com/ForkbombEu/wallet (you can scan the QR code on the github repo),
  • create a user on the wallet
  • scan the QR code you see in the issuance flow page
  • If everything worked well, you should see something like this in the wallet:

wallet (Medium)

DIDroom Microservices are the technological core of the solution: those components offer cryptographic functions as well as transport protocols. The microservices are completely isolated from the Dashboard, meaning that:

  • The code is hosted in a separated repo
  • The microservices can run independently from the Dashboard
  • Each microservice has its own secret keys and DID to identify them: those are generated by the microservice at its first provisioning

Installing DiDRoom Microservices ​

Welcome to DiDRoom Microservices installation guide! Below are two recommended ways to install DiDRoom Microservices:

This method is recommended for users who want a quick and hassle-free installation experience. Follow these steps:

  1. Download Zip File: from the issuance flow of the dashboard dashboard.didroom.com, click on "Download issuer" to download the zip file containing all the necessary components, see screnshot below:

microservices_download

  1. Extract and Configure: Extract the zip file to your desired location and follow the provided instructions to configure the components according to your requirements.

  2. Ready to Use: Once configured, your DiDRoom Microservices are ready to use! Start managing decentralized identities and secure communication seamlessly.

bash
make up

Alternative Way: Clone and Compile ​

This method is recommended for advanced users who prefer to have full control over their installation process. Follow these steps:

  1. Clone Repository: Clone the DiDRoom Microservices repository from our GitHub page.

  2. Compile .well-known and Credential Issuance Info: Compile your .well-known file and credential issuance information according to your specific needs and requirements.

  3. Customize and Configure: Customize and configure the microservices as needed for your applications. Ensure all components are correctly configured and integrated.

  4. Deployment: Deploy the microservices in your environment and start managing decentralized identities and secure communication.

sh
#!/usr/bin/env bash
+    
Skip to content

Deploy microservices ​

for πŸ› οΈ System Administrator ​

Preparation ​

  • Register a domain name, let's say: microservices.myapp.domain

  • Setup a linux server, configure SSL and make sure the server is resolved at: https://microservices.myapp.domain/

  • Make sure you have all the commands installed, type: sudo apt install make wget jq git -y

Provision and download the Microservices ​

  • Go to https://dashboard.didroom.com and create an issuance flow
  • From the issuance flow page, download the microservices.zip file by"Download microservices"
  • The issuance flow page should look like this:

issuance_flow

Deploy the Microservices ​

  • Copy the microservices.zip file on the server and unzip it, it should create the folder /DIDroom_microservices (which maybe will be inside /microservices...(

  • type: cd DIDroom_microservices

  • type: make up (this command generates the secret keys for the microservices, and registers a DID for each of them)

From that moment, you should have the microservices (authz_server and credential_issuer) running and configured.

Receive your first credential ​

  • install the wallet on an android phone from here: https://github.com/ForkbombEu/wallet (you can scan the QR code on the github repo),
  • create a user on the wallet
  • scan the QR code you see in the issuance flow page
  • If everything worked well, you should see something like this in the wallet:

wallet (Medium)

DIDroom Microservices are the technological core of the solution: those components offer cryptographic functions as well as transport protocols. The microservices are completely isolated from the Dashboard, meaning that:

  • The code is hosted in a separated repo
  • The microservices can run independently from the Dashboard
  • Each microservice has its own secret keys and DID to identify them: those are generated by the microservice at its first provisioning

Installing DiDRoom Microservices ​

Welcome to DiDRoom Microservices installation guide! Below are two recommended ways to install DiDRoom Microservices:

This method is recommended for users who want a quick and hassle-free installation experience. Follow these steps:

  1. Download Zip File: from the issuance flow of the dashboard dashboard.didroom.com, click on "Download issuer" to download the zip file containing all the necessary components, see screnshot below:

microservices_download

  1. Extract and Configure: Extract the zip file to your desired location and follow the provided instructions to configure the components according to your requirements.

  2. Ready to Use: Once configured, your DiDRoom Microservices are ready to use! Start managing decentralized identities and secure communication seamlessly.

bash
make up

Alternative Way: Clone and Compile ​

This method is recommended for advanced users who prefer to have full control over their installation process. Follow these steps:

  1. Clone Repository: Clone the DiDRoom Microservices repository from our GitHub page.

  2. Compile .well-known and Credential Issuance Info: Compile your .well-known file and credential issuance information according to your specific needs and requirements.

  3. Customize and Configure: Customize and configure the microservices as needed for your applications. Ensure all components are correctly configured and integrated.

  4. Deployment: Deploy the microservices in your environment and start managing decentralized identities and secure communication.

sh
#!/usr/bin/env bash
 echo 'πŸŽ‰  Welcome to didroom-microservices install'
 git clone --recursive https://github.com/forkbombeu/didroom_microservices
 cd didroom_microservices
diff --git a/docs/pr-preview/pr-16/guides/4_sysadmin/index.html b/docs/pr-preview/pr-16/guides/4_sysadmin/index.html
index aa63944..0cef5e3 100644
--- a/docs/pr-preview/pr-16/guides/4_sysadmin/index.html
+++ b/docs/pr-preview/pr-16/guides/4_sysadmin/index.html
@@ -17,7 +17,7 @@
     
   
   
-    
Skip to content

πŸ› οΈ System Administrator ​

Welcome, System Administrator! This guide provides step-by-step instructions for setting up and managing the infrastructure that powers DiDRoom. Whether you're deploying a new instance, self-hosting the dashboard, or deploying microservices, this guide has you covered.

Setup an Instance πŸ—οΈ ​

Learn how to set up a new instance of DiDRoom to get started with decentralized identity management and secure communication.

Self-Host the Dashboard πŸ–₯️ ​

Explore the process of self-hosting the DiDRoom dashboard to gain full control over your infrastructure and data.

Deploy Microservices πŸš€ ​

Discover how to deploy DiDRoom microservices to enable various functionalities and services within your organization.

+
Skip to content

πŸ› οΈ System Administrator ​

Welcome, System Administrator! This guide provides step-by-step instructions for setting up and managing the infrastructure that powers DiDRoom. Whether you're deploying a new instance, self-hosting the dashboard, or deploying microservices, this guide has you covered.

Setup an Instance πŸ—οΈ ​

Learn how to set up a new instance of DiDRoom to get started with decentralized identity management and secure communication.

Self-Host the Dashboard πŸ–₯️ ​

Explore the process of self-hosting the DiDRoom dashboard to gain full control over your infrastructure and data.

Deploy Microservices πŸš€ ​

Discover how to deploy DiDRoom microservices to enable various functionalities and services within your organization.

diff --git a/docs/pr-preview/pr-16/guides/4_sysadmin/setup.html b/docs/pr-preview/pr-16/guides/4_sysadmin/setup.html index a463300..34f948b 100644 --- a/docs/pr-preview/pr-16/guides/4_sysadmin/setup.html +++ b/docs/pr-preview/pr-16/guides/4_sysadmin/setup.html @@ -17,8 +17,8 @@ -
Skip to content

Setup the Dashboard ​

for πŸ› οΈ System Administrator ​

For users who prefer full control over their infrastructure and data, Didroom supports on-premise deployment. Follow these steps to deploy the DIDroom Dashboard on your own infrastructure:

TIP

If you are unfamiliar with servers, devops and unix commands look also at the Software as a service section that will allow you to define a credential issuance flow in minutes! Without installing anything on your servers.

Checklist

Before starting please make sure you have a

  1. Git installed on your server
  2. Docker compose installed on your server
  3. DID admin domain/context as specified on dyne/W3C-DID

1. clone the repo ​

bash
git clone --recursive https://github.com/forkbombeu/signroom

WARNING

Pay attention at the --recursive that will clone also the sub repositories!

2. Run the Dashboard (Admin Panel and DIDroom Control Room) ​

bash
cd signroom
-docker compose up --build

This will run the DIDroom Dashboard which includes two interconnected web-applications:

  • Admin Panel: based on PocketBase, this application is accessible only to the sysadmin and it allows to configure and edit data structure and API configurations.
  • DIDroom Control Room: this the DIDroom web application accessible to all users, allows to manage credential issuance and verification flows and their deployment and the organizations

The two web applications run on two different ports and have different user accounts.

3. Log in onto the DIDroom Control Room ​

Go to:

http
http://localhost:4173/

Register a new uer or log in using the default user:

user: userA@example.org

pass: userAuserA

4. login onto to the Admin Panel ​

Go to:

http
http://localhost:8090/_

TIP

Pay attention at the final underscore, of the address

A default administrator user is created with the following user and pass:

user: admin@example.org

pass: adminadmin

5. Setup the DID service ​

DIDroom uses the Dyne's DID service as a public key infrastructure. You can choose to ask us (Forkbomb or Dyne.org) to provide you the admin data, or deploy Dyne's DID service on your server.

You can ask for your admin domain/context as specified on dyne/W3C-DID

Follow the video:

  1. login into the dashboard
  2. go on the features collection
  3. select the DID feature
  4. insert you admin data
+
Skip to content

Setup the Dashboard ​

for πŸ› οΈ System Administrator ​

For users who prefer full control over their infrastructure and data, Didroom supports on-premise deployment. Follow these steps to deploy the DIDroom Dashboard on your own infrastructure:

TIP

If you are unfamiliar with servers, devops and unix commands look also at the Software as a service section that will allow you to define a credential issuance flow in minutes! Without installing anything on your servers.

Checklist

Before starting please make sure you have a

  1. Git installed on your server
  2. Docker compose installed on your server
  3. DID admin domain/context as specified on dyne/W3C-DID

1. clone the repo ​

bash
git clone --recursive https://github.com/forkbombeu/signroom

WARNING

Pay attention at the --recursive that will clone also the sub repositories!

2. Run the Dashboard (Admin Panel and DIDroom Dashboard) ​

bash
cd signroom
+docker compose up --build

This will run the DIDroom Dashboard which includes two interconnected web-applications:

  • Admin Panel: based on PocketBase, this application is accessible only to the sysadmin and it allows to configure and edit data structure and API configurations.
  • DIDroom Dashboard: this the DIDroom web application accessible to all users, allows to manage credential issuance and verification flows and their deployment and the organizations

The two web applications run on two different ports and have different user accounts.

3. Log in onto the DIDroom Dashboard ​

Go to:

http
http://localhost:4173/

Register a new uer or log in using the default user:

user: userA@example.org

pass: userAuserA

4. login onto to the Admin Panel ​

Go to:

http
http://localhost:8090/_

TIP

Pay attention at the final underscore, of the address

A default administrator user is created with the following user and pass:

user: admin@example.org

pass: adminadmin

5. Setup the DID service ​

DIDroom uses the Dyne's DID service as a public key infrastructure. You can choose to ask us (Forkbomb or Dyne.org) to provide you the admin data, or deploy Dyne's DID service on your server.

You can ask for your admin domain/context as specified on dyne/W3C-DID

Follow the video:

  1. login into the dashboard
  2. go on the features collection
  3. select the DID feature
  4. insert you admin data
diff --git a/docs/pr-preview/pr-16/guides/4_sysadmin/setup_dashboard.html b/docs/pr-preview/pr-16/guides/4_sysadmin/setup_dashboard.html index 5dbc5c3..6bdd3cb 100644 --- a/docs/pr-preview/pr-16/guides/4_sysadmin/setup_dashboard.html +++ b/docs/pr-preview/pr-16/guides/4_sysadmin/setup_dashboard.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-16/guides/5_signature/1_signature.html b/docs/pr-preview/pr-16/guides/5_signature/1_signature.html index 79da450..113bffd 100644 --- a/docs/pr-preview/pr-16/guides/5_signature/1_signature.html +++ b/docs/pr-preview/pr-16/guides/5_signature/1_signature.html @@ -17,7 +17,7 @@ -
Skip to content

Signature ​

The Signature features allow to you sign documents and files, according to the standards PaDES, CaDES, JaDES or XaDES using your secrets keys and a certificate.

You can as well verify signatures from 3rd parties.

Supported types ​

The standard supported (PaDES/CaDES/JaDES/XaDES) are compliant with the eIDAS regulation and are the ones most widely accepted in the industry.

Signature flow ​

The signature occurs in the Webapp, specifically in the browser: this implies that your secret keys are only store and used in the browser and never communicated to anyone, according to the privacy-by-design and end-to-encryption principles.

The signature produced in the Webapp is packed into a JSON object and communicated to a service we run in backend using the open source Digital Signing Service software, the official software implemented and maintained by the European Commission, for digital signatures. The software is open source, you can find the source code on https://github.com/esig/dss/.

Important!

The secret key to sign documents is stored and used only in the browser (thus the signature works offline!), are never communicated to anyone and from the signature it's mathematically impossible to recreate the secret key.

Import a secret key and certificate ​

You probably want to start by importing a secret key and and an X.509 certificate. To do that press on the Certificates button on the sidebar:

Signature1

Then press the button Add a Key-Certificate Pair in top right of the page, a modal window will pop-up, fill it with the info about your key

Signature1

As a result you should see your key/certificate appearing in the list. Under Algorithm you see the type of signature that can be performed with each given pair of key/certificate. Currently we support:

  • Elliptic curve signatures
    • ECDSA on secp256r1 (also known as P-256 or NIST-256)
    • EdDSA on Ed25519
  • RSA
    • RSASSA-PKCS1-v1_5
    • RSA-PSS

In the example below, we added an RSA key/certificate:

Signature1

Create a certificate (for test purposes) ​

if you want to test the software, you could create a secret key, along with a self-signed X.509 certificate.

  1. Create a secret key, in this case this will allow you to produce an ECDSA signature on the secp256r1 curve, with the following line
bash
openssl ecparam -out ec_key.pem -name secp256r1 -genkey

The output should look like:

-----BEGIN EC PARAMETERS-----
+    
Skip to content

Signature ​

The Signature features allow to you sign documents and files, according to the standards PaDES, CaDES, JaDES or XaDES using your secrets keys and a certificate.

You can as well verify signatures from 3rd parties.

Supported types ​

The standard supported (PaDES/CaDES/JaDES/XaDES) are compliant with the eIDAS regulation and are the ones most widely accepted in the industry.

Signature flow ​

The signature occurs in the Webapp, specifically in the browser: this implies that your secret keys are only store and used in the browser and never communicated to anyone, according to the privacy-by-design and end-to-encryption principles.

The signature produced in the Webapp is packed into a JSON object and communicated to a service we run in backend using the open source Digital Signing Service software, the official software implemented and maintained by the European Commission, for digital signatures. The software is open source, you can find the source code on https://github.com/esig/dss/.

Important!

The secret key to sign documents is stored and used only in the browser (thus the signature works offline!), are never communicated to anyone and from the signature it's mathematically impossible to recreate the secret key.

Import a secret key and certificate ​

You probably want to start by importing a secret key and and an X.509 certificate. To do that press on the Certificates button on the sidebar:

Signature1

Then press the button Add a Key-Certificate Pair in top right of the page, a modal window will pop-up, fill it with the info about your key

Signature1

As a result you should see your key/certificate appearing in the list. Under Algorithm you see the type of signature that can be performed with each given pair of key/certificate. Currently we support:

  • Elliptic curve signatures
    • ECDSA on secp256r1 (also known as P-256 or NIST-256)
    • EdDSA on Ed25519
  • RSA
    • RSASSA-PKCS1-v1_5
    • RSA-PSS

In the example below, we added an RSA key/certificate:

Signature1

Create a certificate (for test purposes) ​

if you want to test the software, you could create a secret key, along with a self-signed X.509 certificate.

  1. Create a secret key, in this case this will allow you to produce an ECDSA signature on the secp256r1 curve, with the following line
bash
openssl ecparam -out ec_key.pem -name secp256r1 -genkey

The output should look like:

-----BEGIN EC PARAMETERS-----
 BggqhkjOPQMBBw==
 -----END EC PARAMETERS-----
 -----BEGIN EC PRIVATE KEY-----
diff --git a/docs/pr-preview/pr-16/guides/5_signature/2_multisignature.html b/docs/pr-preview/pr-16/guides/5_signature/2_multisignature.html
index 0181f96..33e2c79 100644
--- a/docs/pr-preview/pr-16/guides/5_signature/2_multisignature.html
+++ b/docs/pr-preview/pr-16/guides/5_signature/2_multisignature.html
@@ -17,7 +17,7 @@
     
   
   
-    
Skip to content

Multisignature Flow ​

The Multisignature Flow is a an implementation of the cryptographic flow described in the Reflow Multisignature paper. This allows users to create a JSON object to be signed, invite users to sign it, set a deadline and wait for their signatures. The signature process uses the homomorphic capabilities of the BLS 12-381 curve - see here if you're curious. The responses are anonymous and the output is a cryptographical object verifiable by anyone.

Create a Multisignature ​

Click on Multisignatures in the sidebar to get started:

Signature1

The first page is a brieg introducton giving some basic concepts. See below what a Coconut Issuer is and what it's used for.

Signature1

Click on Start Setup to get started, here you'll have to fill:

  • Name: the name of this Multisignature flow, the name will appear in your Multisignature page and those you invite as well.
  • Credential Issuer: (Coconut Issuer) this is treated in a subchapter below. For now, just select the Coconut issuer we offer from the list
  • Reflow Seal: this is the data that you're asking to sign (see the subchapter below). In this Reflow Seal, we have 3 individuals (Spacetest, nenno and GI Hefe) agreeing on their respective yearly designated driver quota.
  • Settings: here you can specify the expiry of the Multisignature, meaning that the invitees will only be allowed to sign until the deadline

The setup page looks like:

Signature1

The Reflow Seal and the signing/verification algorithm ​

A Reflow Seal (as in the paper) is the data that the signees have to agree to sign. In our first implementation it's a JSON object and it can easily refer to a document, the content of a URL or something stored in a database or blockchain.

In fact, that is an oversimplifycation of what a Reflow Seal is, a slightly more encompassing explaination is: the Reflow Seal is a cryptographic object containing the JSON above, along with the public keys and the signatures (if they choose to sign) of the signees.

If you're not satisfied with this and are ready to deep-dive into the magic world of cryptography, read the text box below.

Warning: hard-core cryptography ahead 🀯

In the cryptographic flow happening under the hood after the setup, The Reflow Seal is hashed, then each signee (that chooses to sign) will produce a BLS 12-381 signature that will be homomorphically aggregated to the hash of the Reflow Seal. We did in fact omit an important step: while the Reflow Seal was being hashed, the public keys of the signees have been homomorphically aggregated.

After all the signatures have been collected and aggregated, a Miller Loop ( read a somewhat easy explanation here) is performed to verify if the aggregated signatures match the aggregated public keys: if they do, the Multisignature is successful. This is the core of the algorithm, which enables anonymous signatures and was originally designed for blockchain applications. We did actually omit one more step, the Coconut credential issuance, which we cover below.

The Coconut Issuer ​

The Coconut Paper defines a zero knowledge proof flow for credential issuance, with plenty of bells and whistles. In our implementation, the Coconut Issuer produces a Coconut credential for each of the users invited to sing.

Warning: more hard-core cryptography ahead 🀯🀯

Using a Coconut credential has the purpose of making sure that the ones signing the Reflow Seal, are the ones who have been invited to sign, in order to overcoming the rogue public key attack while keeping the signature anonymous and cryptographically verifiable.

Invite the users ​

When done with the steps above, click on Confirm Content on the top right of the page to land on the Invite Users page, that you can use to invite users base on their username or email (if they chose to have the email as public).

Signature1

We chose to invite the users Spacetest, nenno and GI Hefe which are the people who will be sharing the car, according to the Reflow Seal.

Note: The choice to include the signees' names in the Reflow Seal was aimed exclusively for educational purposes: you can write whatever you want in the Reflow Seal and invite whoever you want to sign it.

The result should be something like this:

Signature1

Finalize ​

This page shows you a recap of the Multisignature flow you're working on: at this stage you can still change things, once you click on Confirm and Sign in the top right of the page, the cryptographic material will be produced and you won't be able to make changes after that.

Signature1

Wait for signatures ​

After you clicked on Confirm and Sign, the Multisignature is ready to be signed and a notification is sent per email to the signees. You'll see it here:

Signature1

Check status ​

If you click on "View" on the Multisignature, you can see the status, including if everyone has signed or someone is missing.

Signature1

+
Skip to content

Multisignature Flow ​

The Multisignature Flow is a an implementation of the cryptographic flow described in the Reflow Multisignature paper. This allows users to create a JSON object to be signed, invite users to sign it, set a deadline and wait for their signatures. The signature process uses the homomorphic capabilities of the BLS 12-381 curve - see here if you're curious. The responses are anonymous and the output is a cryptographical object verifiable by anyone.

Create a Multisignature ​

Click on Multisignatures in the sidebar to get started:

Signature1

The first page is a brieg introducton giving some basic concepts. See below what a Coconut Issuer is and what it's used for.

Signature1

Click on Start Setup to get started, here you'll have to fill:

  • Name: the name of this Multisignature flow, the name will appear in your Multisignature page and those you invite as well.
  • Credential Issuer: (Coconut Issuer) this is treated in a subchapter below. For now, just select the Coconut issuer we offer from the list
  • Reflow Seal: this is the data that you're asking to sign (see the subchapter below). In this Reflow Seal, we have 3 individuals (Spacetest, nenno and GI Hefe) agreeing on their respective yearly designated driver quota.
  • Settings: here you can specify the expiry of the Multisignature, meaning that the invitees will only be allowed to sign until the deadline

The setup page looks like:

Signature1

The Reflow Seal and the signing/verification algorithm ​

A Reflow Seal (as in the paper) is the data that the signees have to agree to sign. In our first implementation it's a JSON object and it can easily refer to a document, the content of a URL or something stored in a database or blockchain.

In fact, that is an oversimplifycation of what a Reflow Seal is, a slightly more encompassing explaination is: the Reflow Seal is a cryptographic object containing the JSON above, along with the public keys and the signatures (if they choose to sign) of the signees.

If you're not satisfied with this and are ready to deep-dive into the magic world of cryptography, read the text box below.

Warning: hard-core cryptography ahead 🀯

In the cryptographic flow happening under the hood after the setup, The Reflow Seal is hashed, then each signee (that chooses to sign) will produce a BLS 12-381 signature that will be homomorphically aggregated to the hash of the Reflow Seal. We did in fact omit an important step: while the Reflow Seal was being hashed, the public keys of the signees have been homomorphically aggregated.

After all the signatures have been collected and aggregated, a Miller Loop ( read a somewhat easy explanation here) is performed to verify if the aggregated signatures match the aggregated public keys: if they do, the Multisignature is successful. This is the core of the algorithm, which enables anonymous signatures and was originally designed for blockchain applications. We did actually omit one more step, the Coconut credential issuance, which we cover below.

The Coconut Issuer ​

The Coconut Paper defines a zero knowledge proof flow for credential issuance, with plenty of bells and whistles. In our implementation, the Coconut Issuer produces a Coconut credential for each of the users invited to sing.

Warning: more hard-core cryptography ahead 🀯🀯

Using a Coconut credential has the purpose of making sure that the ones signing the Reflow Seal, are the ones who have been invited to sign, in order to overcoming the rogue public key attack while keeping the signature anonymous and cryptographically verifiable.

Invite the users ​

When done with the steps above, click on Confirm Content on the top right of the page to land on the Invite Users page, that you can use to invite users base on their username or email (if they chose to have the email as public).

Signature1

We chose to invite the users Spacetest, nenno and GI Hefe which are the people who will be sharing the car, according to the Reflow Seal.

Note: The choice to include the signees' names in the Reflow Seal was aimed exclusively for educational purposes: you can write whatever you want in the Reflow Seal and invite whoever you want to sign it.

The result should be something like this:

Signature1

Finalize ​

This page shows you a recap of the Multisignature flow you're working on: at this stage you can still change things, once you click on Confirm and Sign in the top right of the page, the cryptographic material will be produced and you won't be able to make changes after that.

Signature1

Wait for signatures ​

After you clicked on Confirm and Sign, the Multisignature is ready to be signed and a notification is sent per email to the signees. You'll see it here:

Signature1

Check status ​

If you click on "View" on the Multisignature, you can see the status, including if everyone has signed or someone is missing.

Signature1

diff --git a/docs/pr-preview/pr-16/guides/5_signature/index.html b/docs/pr-preview/pr-16/guides/5_signature/index.html index 1ed59cb..37699c0 100644 --- a/docs/pr-preview/pr-16/guides/5_signature/index.html +++ b/docs/pr-preview/pr-16/guides/5_signature/index.html @@ -17,7 +17,7 @@ -
Skip to content

πŸ–ŠοΈ Signatures ​

The application can produce different types of signatures, using different technologies for different purposes.

Document Signature ​

The Signature features allow to you sign documents and files, according to the standards PaDES, CaDES, JaDES or XaDES using your secrets keys and a certificate.

Multisignature Flow ​

The Multisignature Flow is a an implementation of the cryptographic flow described in the Reflow Multisignature paper. This allows users to create a JSON object to be signed, invite users to sign it, set a deadline and wait for their signatures. The signature process uses the homomorphic capabilities of the BLS 12-381 curve - see here if you're curious. The responses are anonymous and the output is a cryptographical object verifiable by anyone.

+
Skip to content

πŸ–ŠοΈ Signatures ​

The application can produce different types of signatures, using different technologies for different purposes.

Document Signature ​

The Signature features allow to you sign documents and files, according to the standards PaDES, CaDES, JaDES or XaDES using your secrets keys and a certificate.

Multisignature Flow ​

The Multisignature Flow is a an implementation of the cryptographic flow described in the Reflow Multisignature paper. This allows users to create a JSON object to be signed, invite users to sign it, set a deadline and wait for their signatures. The signature process uses the homomorphic capabilities of the BLS 12-381 curve - see here if you're curious. The responses are anonymous and the output is a cryptographical object verifiable by anyone.

diff --git a/docs/pr-preview/pr-16/guides/6_components/index.html b/docs/pr-preview/pr-16/guides/6_components/index.html index fad8213..aba9f63 100644 --- a/docs/pr-preview/pr-16/guides/6_components/index.html +++ b/docs/pr-preview/pr-16/guides/6_components/index.html @@ -17,7 +17,7 @@ -
Skip to content

πŸ“‘ Concepts/Components ​

Issuance flow: TBW

Verification flow: TBW

Templates: TBW

Decentralized Identifier (DID): A globally unique, self-sovereign identifier that enables individuals and entities to have control over their digital identities without relying on centralized authorities.

EUDI-ARF: Acronym for "The European Digital Identity Wallet Architecture and Reference Framework," a technical core of the eIDAS 2.0 regulation that outlines standards for digital identity wallets.

eIDAS 2.0 Regulation: The updated version of the eIDAS (electronic Identification, Authentication and Trust Services) regulation that sets standards for electronic identification and trusted services within the European Union.

Self-Sovereign Identity (SSI): A decentralized identity model that enables individuals to have full control over their digital identity and personal data. SSI allows users to manage and share verifiable credentials without the need for intermediaries.

Verifiable Credentials (VC): Digital attestations that enable the issuance and verification of claims about a subject's identity, attributes, or qualifications.

Wallet: In the context of DidRoom, a software application or platform that allows users to manage their digital identities, store cryptographic keys, create and manage DIDs, and interact with blockchain networks and verifiable credentials.

Zero-Knowledge Proofs: Cryptographic methods that allow a party to prove knowledge of a certain value or statement without revealing the actual value itself. Zero-knowledge proofs enhance privacy and security by demonstrating knowledge without disclosing sensitive information.

W3C-DID: Abbreviation for "W3C Decentralized Identifier," a standard by the World Wide Web Consortium (W3C) for creating, managing, and resolving decentralized identifiers.

W3C-VC: Abbreviation for "W3C Verifiable Credentials," a standard by the World Wide Web Consortium (W3C) for creating and verifying digital credentials in a secure and interoperable manner.

Zenroom: A cryptographic virtual machine developed by Dyne.org Foundation, capable of performing various cryptographic operations and supporting blockchain interoperability.

Zenswarm: A blockchain oracle technology developed for blockchain interoperability and off-chain cryptography, utilizing Zenroom at its core.

+
Skip to content

πŸ“‘ Concepts/Components ​

Issuance flow: TBW

Verification flow: TBW

Templates: TBW

Decentralized Identifier (DID): A globally unique, self-sovereign identifier that enables individuals and entities to have control over their digital identities without relying on centralized authorities.

EUDI-ARF: Acronym for "The European Digital Identity Wallet Architecture and Reference Framework," a technical core of the eIDAS 2.0 regulation that outlines standards for digital identity wallets.

eIDAS 2.0 Regulation: The updated version of the eIDAS (electronic Identification, Authentication and Trust Services) regulation that sets standards for electronic identification and trusted services within the European Union.

Self-Sovereign Identity (SSI): A decentralized identity model that enables individuals to have full control over their digital identity and personal data. SSI allows users to manage and share verifiable credentials without the need for intermediaries.

Verifiable Credentials (VC): Digital attestations that enable the issuance and verification of claims about a subject's identity, attributes, or qualifications.

Wallet: In the context of DidRoom, a software application or platform that allows users to manage their digital identities, store cryptographic keys, create and manage DIDs, and interact with blockchain networks and verifiable credentials.

Zero-Knowledge Proofs: Cryptographic methods that allow a party to prove knowledge of a certain value or statement without revealing the actual value itself. Zero-knowledge proofs enhance privacy and security by demonstrating knowledge without disclosing sensitive information.

W3C-DID: Abbreviation for "W3C Decentralized Identifier," a standard by the World Wide Web Consortium (W3C) for creating, managing, and resolving decentralized identifiers.

W3C-VC: Abbreviation for "W3C Verifiable Credentials," a standard by the World Wide Web Consortium (W3C) for creating and verifying digital credentials in a secure and interoperable manner.

Zenroom: A cryptographic virtual machine developed by Dyne.org Foundation, capable of performing various cryptographic operations and supporting blockchain interoperability.

Zenswarm: A blockchain oracle technology developed for blockchain interoperability and off-chain cryptography, utilizing Zenroom at its core.

diff --git a/docs/pr-preview/pr-16/guides/6_components/keypairoom.html b/docs/pr-preview/pr-16/guides/6_components/keypairoom.html index 31040b2..3a10200 100644 --- a/docs/pr-preview/pr-16/guides/6_components/keypairoom.html +++ b/docs/pr-preview/pr-16/guides/6_components/keypairoom.html @@ -17,7 +17,7 @@ -
Skip to content

Keypairoom: (re)generate your secret keys ​

Keypairoom is component to generate and regenerate a keyring, containing multiple secret keys (along with the correspondet public keys) in a deterministic and private way.

The cryptographic part consists of multiple Zenroom scripts that allows you to generate a seed by answering to questions that (probably) only you can respond, namely "The challenges".

Privacy ​

The challenges are processed inside the client applications (the Wallet App or the browser where you opened the DIDroom Control Room. Note:

  • The Zenroom scripts processing the answers work offline.
  • Your answers are never communicated to any external service.
  • No one can reconstruct them based on their output: this is certain based on the math behind it, if you're curious you can read about it here.
  • The answers are not used to identify you in anyway, they are just some text that only you can write and belong to your past, so it should not change over time.

More about privacy ​

We hear you saying:

I don't want to answer any question I don't trust writing my personal data anywhere... what now?

So you don't want to write private data anywhere, cause you don't trust software security ever? We (the developers) understand you well and share your feelings πŸ˜ƒ

TLDR: answer using random text and save the seed!

If that's the case, no problem at all: you can just answer to the challenges with some random/junk text. After your secret keys are created, you are offered to store the seed: the seed is a piece of data, printed as a mnemonic phrase that will allow you to re-generate the same secret keys at any time.

What does a mmnemonic phrase look like? Like this:

mnemonic
expect cart barely fruit learn tortoise work essence guitar

If you log out from the wallet, or try to login onto a new device (or browser), you are given the option to paste your seed: therefore store your seed in a safe place, it will work forever, no matter what you answered in that challenges.

+
Skip to content

Keypairoom: (re)generate your secret keys ​

Keypairoom is component to generate and regenerate a keyring, containing multiple secret keys (along with the correspondet public keys) in a deterministic and private way.

The cryptographic part consists of multiple Zenroom scripts that allows you to generate a seed by answering to questions that (probably) only you can respond, namely "The challenges".

Privacy ​

The challenges are processed inside the client applications (the Wallet App or the browser where you opened the DIDroom Dashboard. Note:

  • The Zenroom scripts processing the answers work offline.
  • Your answers are never communicated to any external service.
  • No one can reconstruct them based on their output: this is certain based on the math behind it, if you're curious you can read about it here.
  • The answers are not used to identify you in anyway, they are just some text that only you can write and belong to your past, so it should not change over time.

More about privacy ​

We hear you saying:

I don't want to answer any question I don't trust writing my personal data anywhere... what now?

So you don't want to write private data anywhere, cause you don't trust software security ever? We (the developers) understand you well and share your feelings πŸ˜ƒ

TLDR: answer using random text and save the seed!

If that's the case, no problem at all: you can just answer to the challenges with some random/junk text. After your secret keys are created, you are offered to store the seed: the seed is a piece of data, printed as a mnemonic phrase that will allow you to re-generate the same secret keys at any time.

What does a mmnemonic phrase look like? Like this:

mnemonic
expect cart barely fruit learn tortoise work essence guitar

If you log out from the wallet, or try to login onto a new device (or browser), you are given the option to paste your seed: therefore store your seed in a safe place, it will work forever, no matter what you answered in that challenges.

diff --git a/docs/pr-preview/pr-16/guides/index.html b/docs/pr-preview/pr-16/guides/index.html index 5f14eef..6e50600 100644 --- a/docs/pr-preview/pr-16/guides/index.html +++ b/docs/pr-preview/pr-16/guides/index.html @@ -17,7 +17,7 @@ - + diff --git a/docs/pr-preview/pr-16/intro.html b/docs/pr-preview/pr-16/intro.html index 0977de3..366f320 100644 --- a/docs/pr-preview/pr-16/intro.html +++ b/docs/pr-preview/pr-16/intro.html @@ -17,7 +17,7 @@ -
Skip to content

πŸ“– Introduction ​

Welcome to Didroom – your gateway to decentralized identity management and secure communication. Didroom empowers individuals and organizations to take control of their digital identities while ensuring privacy and security. Whether you're looking to streamline identity verification processes, enhance data security, or enable secure communication channels, Didroom provides the tools and infrastructure you need.

You can quickly test, plug and deploy by using our service at dashboard.didroom.com or install the whole ecosystem on-premise on your infrastructure. For detailed instructions please refer to the Get started guide.

How It Works ​

Didroom offers a seamless and intuitive experience for managing decentralized identities and secure communication. Here's how it works:

  • Define services and credentials: Via the Didroom Control Room, users can define services, credentials, and claims services according to their specific requirements.

  • Generate Openid4VCI microservices: Users can generate Openid4VCI microservices directly from the bloom using the Control Room, simplifying the process of creating and deploying identity verification services.

  • Plug custom business logic: Didroom allows users to add custom business logic to their applications, tailoring the functionality to meet their unique needs and requirements.

  • Integrate pre-existing microservices: Users can seamlessly integrate their microservices into their existing systems or applications, enhancing functionality and interoperability.

  • Deploy and control microservices nodes: Didroom enables users to deploy and control microservices nodes directly from the Control Room, streamlining the deployment and management process.

  • Enhance your business logic with natural language smart contracts (Zencode): With Didroom, users can enhance their business logic with natural English smart contracts, enabling advanced automation and decision-making capabilities.

  • Whitelabel wallet and verifier apps: To interact with your services individuals need a wallet app that we provide for whitelabeling. Same a verifier app for indivisuals that want to verify credentials.

Features ​

  • Compliance: Didroom is compliant with industry standards and regulations, including EUDI-ARF, ensuring adherence to data protection laws and regulations.
  • End-to-End encryption: Secure communication is facilitated through end-to-end encryption, ensuring that messages and data remain private and confidential.
  • Decentralized identity management: Didroom enables users to create, control, and manage their digital identities in a decentralized manner, eliminating reliance on central authorities.
  • Customizable and extensible: Didroom is highly customizable and extensible, allowing organizations to tailor the platform to their specific needs and integrate with existing systems seamlessly.

Integration and flexibility ​

Didroom is designed to be seamlessly integrated into third-party solutions and environments. Its modular architecture allows for easy integration with existing microservices or other identity management systems. Whether you need to use Didroom as a standalone solution or integrate it into your existing infrastructure, Didroom provides the flexibility and adaptability you need.

Architectural overview ​

The Didroom ecosystem consists of a modular architecture comprising core technologies and components

  1. Zenroom
  2. Slangroom
  3. No-code-room
  4. Dyne.org Decentralized Identifiers (DID) Service

these provide the foundational elements for identity management and cryptographic operations.

  • Components:

πŸ“‘

For detailed description of each component please refer to πŸ’‘ The Solution

  1. Didroom Control Room / Dashboard
  2. Didroom Microservices
  3. Wallet Holder App
  4. Verifier App

there offer user interfaces and functionalities for managing identities, communication, and verification.

Let's start! ​

Sure, let's 🏁 Get started!

+
Skip to content

πŸ“– Introduction ​

Welcome to Didroom – your gateway to decentralized identity management and secure communication. Didroom empowers individuals and organizations to take control of their digital identities while ensuring privacy and security. Whether you're looking to streamline identity verification processes, enhance data security, or enable secure communication channels, Didroom provides the tools and infrastructure you need.

You can quickly test, plug and deploy by using our service at dashboard.didroom.com or install the whole ecosystem on-premise on your infrastructure. For detailed instructions please refer to the Get started guide.

How It Works ​

Didroom offers a seamless and intuitive experience for managing decentralized identities and secure communication. Here's how it works:

  • Define services and credentials: Via the DIDroom Dashboard, users can define services, credentials, and claims services according to their specific requirements.

  • Generate Openid4VCI microservices: Users can generate Openid4VCI microservices directly from the bloom using the Control Room, simplifying the process of creating and deploying identity verification services.

  • Plug custom business logic: Didroom allows users to add custom business logic to their applications, tailoring the functionality to meet their unique needs and requirements.

  • Integrate pre-existing microservices: Users can seamlessly integrate their microservices into their existing systems or applications, enhancing functionality and interoperability.

  • Deploy and control microservices nodes: Didroom enables users to deploy and control microservices nodes directly from the Control Room, streamlining the deployment and management process.

  • Enhance your business logic with natural language smart contracts (Zencode): With Didroom, users can enhance their business logic with natural English smart contracts, enabling advanced automation and decision-making capabilities.

  • Whitelabel wallet and verifier apps: To interact with your services individuals need a wallet app that we provide for whitelabeling. Same a verifier app for indivisuals that want to verify credentials.

Features ​

  • Compliance: Didroom is compliant with industry standards and regulations, including EUDI-ARF, ensuring adherence to data protection laws and regulations.
  • End-to-End encryption: Secure communication is facilitated through end-to-end encryption, ensuring that messages and data remain private and confidential.
  • Decentralized identity management: Didroom enables users to create, control, and manage their digital identities in a decentralized manner, eliminating reliance on central authorities.
  • Customizable and extensible: Didroom is highly customizable and extensible, allowing organizations to tailor the platform to their specific needs and integrate with existing systems seamlessly.

Integration and flexibility ​

Didroom is designed to be seamlessly integrated into third-party solutions and environments. Its modular architecture allows for easy integration with existing microservices or other identity management systems. Whether you need to use Didroom as a standalone solution or integrate it into your existing infrastructure, Didroom provides the flexibility and adaptability you need.

Architectural overview ​

The Didroom ecosystem consists of a modular architecture comprising core technologies and components

  1. Zenroom
  2. Slangroom
  3. No-code-room
  4. Dyne.org Decentralized Identifiers (DID) Service

these provide the foundational elements for identity management and cryptographic operations.

  • Components:

πŸ“‘

For detailed description of each component please refer to πŸ’‘ The Solution

  1. DIDroom Dashboard / Dashboard
  2. Didroom Microservices
  3. Wallet Holder App
  4. Verifier App

there offer user interfaces and functionalities for managing identities, communication, and verification.

Let's start! ​

Sure, let's 🏁 Get started!

diff --git a/docs/pr-preview/pr-16/solution.html b/docs/pr-preview/pr-16/solution.html index 16330b4..dd0b05e 100644 --- a/docs/pr-preview/pr-16/solution.html +++ b/docs/pr-preview/pr-16/solution.html @@ -17,7 +17,7 @@ -
Skip to content

πŸ’‘ The Solution ​

Our solution is divided into different repositories, each focusing on a specific component. This modular approach allows us to maintain flexibility and scalability, enabling users to customize and integrate the solution according to their specific needs and requirements.

DIDroom Control Room (Dashboard) ​

The DIDroom Control Room/Dashboard serves as the central hub for managing decentralized identity solutions. It provides a user-friendly interface for configuring settings, monitoring performance, and accessing key functionalities.

The core features of the Control Room are:

  • Creation of credential issuance and verification flows
  • Deployment and provisioning of the DIDroom Microservices
  • Creation of organizations, assigning of privileges to different users
  • The admin panel of the Control Room offers:
    • User management
    • Setup of web-hooks and automation flows
    • Customization of the Control Room menu entries

DIDroom Mobile libs (Mobile Zencode) ​

A collection of mobile library, Zencode Mobile holds all the business logic and contracts shared between the different components of the DIDroom Solution. It serves as a centralized repository for managing and updating the core business logic used across various mobile applications and components.

RESOURCES

GitHub

DIDroom microservices ​

Those are the technological core of the solution: those components offer cryptographic functions as well as transport protocols. The microservices are completely isolated from the Dashboard, meaning that:

  • The code is hosted in a separated repo
  • The microservices can run independently from the Dashboard
  • Each microservice has its own secret keys and DID to identify them: those are generated by the microservice at its first provisioning

DIDroom microservices are generated using No-code-room (NCR) and utilize the Zencode Mobile repository to create three different microservices:

  • Credential Issuers: These microservices are compliant with Openid4VCI standards and handle the issuance of credentials.
  • Authorization Servers: These microservices implement OAuth2 and work seamlessly with our DID Service for authentication and authorization.
  • Relying Party: These microservices are compliant with Openid4VP standards and act as relying parties for authentication and authorization.

RESOURCES

GitHub

Wallet Holder App ​

The Wallet Holder App offers a secure and user-friendly interface for managing decentralized identities and digital credentials. It allows users to store, view, and share their identity information with ease inside a TEE (Trusted execution environment) directly on citizens devices.

Verifier App ​

The Verifier App provides tools for verifying the authenticity and validity of decentralized identities and digital credentials. It enables organizations to validate identity claims and ensure compliance with regulatory requirements.

DIDroom web components ​

DIDroom Web Components hold all the UI web components used across all the projects to ensure a coherent Atomic design and allow for white-labeling.

+
Skip to content

πŸ’‘ The Solution ​

Our solution is divided into different repositories, each focusing on a specific component. This modular approach allows us to maintain flexibility and scalability, enabling users to customize and integrate the solution according to their specific needs and requirements.

DIDroom Dashboard (Dashboard) ​

The DIDroom Dashboard/Dashboard serves as the central hub for managing decentralized identity solutions. It provides a user-friendly interface for configuring settings, monitoring performance, and accessing key functionalities.

The core features of the Control Room are:

  • Creation of credential issuance and verification flows
  • Deployment and provisioning of the DIDroom Microservices
  • Creation of organizations, assigning of privileges to different users
  • The admin panel of the Control Room offers:
    • User management
    • Setup of web-hooks and automation flows
    • Customization of the Control Room menu entries

DIDroom Mobile libs (Mobile Zencode) ​

A collection of mobile library, Zencode Mobile holds all the business logic and contracts shared between the different components of the DIDroom Solution. It serves as a centralized repository for managing and updating the core business logic used across various mobile applications and components.

RESOURCES

GitHub

DIDroom microservices ​

Those are the technological core of the solution: those components offer cryptographic functions as well as transport protocols. The microservices are completely isolated from the Dashboard, meaning that:

  • The code is hosted in a separated repo
  • The microservices can run independently from the Dashboard
  • Each microservice has its own secret keys and DID to identify them: those are generated by the microservice at its first provisioning

DIDroom microservices are generated using No-code-room (NCR) and utilize the Zencode Mobile repository to create three different microservices:

  • Credential Issuers: These microservices are compliant with Openid4VCI standards and handle the issuance of credentials.
  • Authorization Servers: These microservices implement OAuth2 and work seamlessly with our DID Service for authentication and authorization.
  • Relying Party: These microservices are compliant with Openid4VP standards and act as relying parties for authentication and authorization.

RESOURCES

GitHub

Wallet Holder App ​

The Wallet Holder App offers a secure and user-friendly interface for managing decentralized identities and digital credentials. It allows users to store, view, and share their identity information with ease inside a TEE (Trusted execution environment) directly on citizens devices.

Verifier App ​

The Verifier App provides tools for verifying the authenticity and validity of decentralized identities and digital credentials. It enables organizations to validate identity claims and ensure compliance with regulatory requirements.

DIDroom web components ​

DIDroom Web Components hold all the UI web components used across all the projects to ensure a coherent Atomic design and allow for white-labeling.

diff --git a/docs/pr-preview/pr-19/assets/chunks/metadata.58527ef3.js b/docs/pr-preview/pr-19/assets/chunks/metadata.58527ef3.js index 263ad2e..46aad8e 100644 --- a/docs/pr-preview/pr-19/assets/chunks/metadata.58527ef3.js +++ b/docs/pr-preview/pr-19/assets/chunks/metadata.58527ef3.js @@ -1 +1 @@ -window.__VP_HASH_MAP__=JSON.parse("{\"guides_1_orgadmin_issuance_flow.md\":\"B1DYVWju\",\"guides_2_wallet_4_present_credential.md\":\"DGAQaNnF\",\"guides_1_orgadmin_index.md\":\"B5vI1S-g\",\"guides_2_wallet_3_get_credential.md\":\"D35u6qjt\",\"guides_3_verifier_2_verification_flow.md\":\"CR2Xidul\",\"guides_3_verifier_3_verify.md\":\"BJ8FPX52\",\"get_started.md\":\"DAeYCjYv\",\"guides_404.md\":\"Q8JlY5PV\",\"guides_4_sysadmin_setup_dashboard.md\":\"BzzThSfx\",\"guides_5_signature_1_signature.md\":\"CAsnw2pg\",\"guides_1_orgadmin_create.md\":\"DwfMHVSs\",\"guides_4_sysadmin_index.md\":\"CSXJ72_R\",\"core-technologies.md\":\"Caj-Uajn\",\"guides_8_acknowledgements_index.md\":\"DheODOWv\",\"guides_5_signature_index.md\":\"JTQYS3aS\",\"guides_3_verifier_index.md\":\"J5EOQLoL\",\"guides_2_wallet_index.md\":\"x4zizmFt\",\"guides_1_orgadmin_credential_issuer.md\":\"ouZZPPRn\",\"guides_1_orgadmin_support.md\":\"B_xLK9uA\",\"guides_4_sysadmin_deploy_microservices.md\":\"Bwa_gdIz\",\"guides_3_verifier_1_join_org.md\":\"Dq5D-GDE\",\"guides_1_orgadmin_auth_server.md\":\"C3qmofrX\",\"guides_2_wallet_1_register.md\":\"DwKfvmya\",\"guides_6_components_issuance.md\":\"Ch1SInOV\",\"intro.md\":\"DpMEAA1Q\",\"guides_5_signature_2_multisignature.md\":\"CdMiXoAW\",\"guides_6_components_index.md\":\"CcJ0u-gA\",\"guides_6_components_generate_keys_keypairoom.md\":\"Bw1C6GKu\",\"guides_2_wallet_2_join_org.md\":\"BL0Rgw6Y\",\"solution.md\":\"DRKRW4FG\",\"guides_7_terms-and-conditions_delete-account.md\":\"CohyJEAz\",\"guides_4_sysadmin_setup.md\":\"BxOShMJm\",\"guides_2_wallet_5_preferences.md\":\"B8A5gAcR\",\"guides_7_terms-and-conditions_privacy-policy.md\":\"DXN0USW9\",\"guides_9_pricing_index.md\":\"bavMY-0B\",\"guides_index.md\":\"JVStLojv\",\"index.md\":\"BdC9ioaP\",\"guides_6_components_verification.md\":\"BxeLVzgi\",\"guides_7_terms-and-conditions_index.md\":\"Bz2Dn03T\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\" \",\"description\":\"Empower your Identity strategy: customize, plug, deploy\",\"base\":\"/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Guide\",\"items\":[{\"text\":\"Organization admins\",\"link\":\"/guides/1_orgadmin/\"},{\"text\":\"Wallet App\",\"link\":\"/guides/2_wallet/\"},{\"text\":\"Verifier App\",\"link\":\"/guides/3_verifier/\"},{\"text\":\"System admins\",\"link\":\"/guides/4_sysadmin/\"},{\"text\":\"Signatures\",\"link\":\"/guides/5_signature/\"}]},{\"text\":\"Get started\",\"link\":\"/get_started\"},{\"text\":\"Pricing\",\"link\":\"/guides/9_pricing/\"}],\"logo\":\"https://raw.githubusercontent.com/ForkbombEu/DIDroom/45a5ffb737d81c33449bf2d394627a88ddbfc1d0/images/DIDroom_logo.svg\",\"sidebar\":[{\"text\":\"πŸ“– Introduction\",\"link\":\"/intro\"},{\"text\":\"πŸ—οΈ Core Technologies\",\"link\":\"/core-technologies\"},{\"text\":\"πŸ’‘ The Solution\",\"link\":\"/solution\"},{\"text\":\"🏁 Get started\",\"link\":\"/get_started\"},{\"text\":\"Guides\",\"link\":\"/guides/index.md\",\"items\":[{\"text\":\"πŸ‘©β€βš–οΈ DIDroom Control Room\",\"link\":\"/guides/1_orgadmin/index.md\",\"items\":[{\"text\":\"Setup an authorization server metadata\",\"link\":\"/guides/1_orgadmin/auth_server\"},{\"text\":\"Create an organization\",\"link\":\"/guides/1_orgadmin/create\"},{\"text\":\"Setup a credential issuer metadata\",\"link\":\"/guides/1_orgadmin/credential_issuer\"},{\"text\":\"Create a fully working credential issuing flow\",\"link\":\"/guides/1_orgadmin/issuance_flow\"},{\"text\":\"Support\",\"link\":\"/guides/1_orgadmin/support\"}],\"collapsed\":false},{\"text\":\"πŸ†” Wallet App \",\"link\":\"/guides/2_wallet/index.md\",\"items\":[{\"text\":\"Create a user account (or login)\",\"link\":\"/guides/2_wallet/1_register\"},{\"text\":\"Join organization\",\"link\":\"/guides/2_wallet/2_join_org\"},{\"text\":\"Request a credential \",\"link\":\"/guides/2_wallet/3_get_credential\"},{\"text\":\"Present a credential\",\"link\":\"/guides/2_wallet/4_present_credential\"},{\"text\":\"Preference page\",\"link\":\"/guides/2_wallet/5_preferences\"}],\"collapsed\":false},{\"text\":\"βœ”οΈ Verifier App \",\"link\":\"/guides/3_verifier/index.md\",\"items\":[{\"text\":\"Create an account and join an organization\",\"link\":\"/guides/3_verifier/1_join_org\"},{\"text\":\"Start a Verification Flow\",\"link\":\"/guides/3_verifier/2_verification_flow\"},{\"text\":\"Verification: Success or Failure\",\"link\":\"/guides/3_verifier/3_verify\"}],\"collapsed\":false},{\"text\":\"Coming soon!\",\"link\":\"/guides/404\"},{\"text\":\"πŸ› οΈ System Administrator\",\"link\":\"/guides/4_sysadmin/index.md\",\"items\":[{\"text\":\"Setup the Dashboard\",\"link\":\"/guides/4_sysadmin/setup\"},{\"text\":\"Self-Host the Dashboard\",\"link\":\"/guides/4_sysadmin/setup_dashboard\"},{\"text\":\"Deploy microservices\",\"link\":\"/guides/4_sysadmin/deploy_microservices\"}],\"collapsed\":false},{\"text\":\"πŸ–ŠοΈ Signatures \",\"link\":\"/guides/5_signature/index.md\",\"items\":[{\"text\":\"Signature\",\"link\":\"/guides/5_signature/1_signature\"},{\"text\":\"Multisignature Flow\",\"link\":\"/guides/5_signature/2_multisignature\"}],\"collapsed\":false},{\"text\":\"πŸ“‘ Concepts/Components\",\"link\":\"/guides/6_components/index.md\",\"items\":[{\"text\":\"Keypairoom: (re)generate your Secret Keys \",\"link\":\"/guides/6_components/generate_keys_keypairoom\"},{\"text\":\"Issuance flow\",\"link\":\"/guides/6_components/issuance\"},{\"text\":\"Verification flow\",\"link\":\"/guides/6_components/verification\"}],\"collapsed\":false},{\"text\":\"πŸ—Ž Terms and conditions\",\"link\":\"/guides/7_terms-and-conditions/index.md\",\"items\":[{\"text\":\"delete-account\",\"link\":\"/guides/7_terms-and-conditions/delete-account\"},{\"text\":\"Privacy Policies\",\"link\":\"/guides/7_terms-and-conditions/privacy-policy\"}],\"collapsed\":false},{\"text\":\"🫢🏻 Acknowledgements\",\"link\":\"/guides/8_Acknowledgements/index.md\",\"items\":[],\"collapsed\":false},{\"text\":\"πŸ«±πŸ½β€πŸ«²πŸΏ Pricing πŸ«±πŸΎβ€πŸ«²πŸΌ\",\"link\":\"/guides/9_pricing/index.md\",\"items\":[],\"collapsed\":false}],\"collapsed\":false}],\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/forkbombeu/didroom\"},{\"icon\":\"linkedin\",\"link\":\"https://linkedin.com/company/forkbomb\"}],\"footer\":{\"message\":\"Released under the AGPLv3 License.\",\"copyright\":\"Copyleft πŸ„― 2023-present Forkbomb B.V.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":false}"); \ No newline at end of file +window.__VP_HASH_MAP__=JSON.parse("{\"guides_1_orgadmin_issuance_flow.md\":\"B1DYVWju\",\"guides_2_wallet_4_present_credential.md\":\"DGAQaNnF\",\"guides_1_orgadmin_index.md\":\"B5vI1S-g\",\"guides_2_wallet_3_get_credential.md\":\"D35u6qjt\",\"guides_3_verifier_2_verification_flow.md\":\"CR2Xidul\",\"guides_3_verifier_3_verify.md\":\"BJ8FPX52\",\"get_started.md\":\"DAeYCjYv\",\"guides_404.md\":\"Q8JlY5PV\",\"guides_4_sysadmin_setup_dashboard.md\":\"BzzThSfx\",\"guides_5_signature_1_signature.md\":\"CAsnw2pg\",\"guides_1_orgadmin_create.md\":\"DwfMHVSs\",\"guides_4_sysadmin_index.md\":\"CSXJ72_R\",\"core-technologies.md\":\"Caj-Uajn\",\"guides_8_acknowledgements_index.md\":\"DheODOWv\",\"guides_5_signature_index.md\":\"JTQYS3aS\",\"guides_3_verifier_index.md\":\"J5EOQLoL\",\"guides_2_wallet_index.md\":\"x4zizmFt\",\"guides_1_orgadmin_credential_issuer.md\":\"ouZZPPRn\",\"guides_1_orgadmin_support.md\":\"B_xLK9uA\",\"guides_4_sysadmin_deploy_microservices.md\":\"Bwa_gdIz\",\"guides_3_verifier_1_join_org.md\":\"Dq5D-GDE\",\"guides_1_orgadmin_auth_server.md\":\"C3qmofrX\",\"guides_2_wallet_1_register.md\":\"DwKfvmya\",\"guides_6_components_issuance.md\":\"Ch1SInOV\",\"intro.md\":\"DpMEAA1Q\",\"guides_5_signature_2_multisignature.md\":\"CdMiXoAW\",\"guides_6_components_index.md\":\"CcJ0u-gA\",\"guides_6_components_generate_keys_keypairoom.md\":\"Bw1C6GKu\",\"guides_2_wallet_2_join_org.md\":\"BL0Rgw6Y\",\"solution.md\":\"DRKRW4FG\",\"guides_7_terms-and-conditions_delete-account.md\":\"CohyJEAz\",\"guides_4_sysadmin_setup.md\":\"BxOShMJm\",\"guides_2_wallet_5_preferences.md\":\"B8A5gAcR\",\"guides_7_terms-and-conditions_privacy-policy.md\":\"DXN0USW9\",\"guides_9_pricing_index.md\":\"bavMY-0B\",\"guides_index.md\":\"JVStLojv\",\"index.md\":\"BdC9ioaP\",\"guides_6_components_verification.md\":\"BxeLVzgi\",\"guides_7_terms-and-conditions_index.md\":\"Bz2Dn03T\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\" \",\"description\":\"Empower your Identity strategy: customize, plug, deploy\",\"base\":\"/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"nav\":[{\"text\":\"Home\",\"link\":\"/\"},{\"text\":\"Guide\",\"items\":[{\"text\":\"Organization admins\",\"link\":\"/guides/1_orgadmin/\"},{\"text\":\"Wallet App\",\"link\":\"/guides/2_wallet/\"},{\"text\":\"Verifier App\",\"link\":\"/guides/3_verifier/\"},{\"text\":\"System admins\",\"link\":\"/guides/4_sysadmin/\"},{\"text\":\"Signatures\",\"link\":\"/guides/5_signature/\"}]},{\"text\":\"Get started\",\"link\":\"/get_started\"},{\"text\":\"Pricing\",\"link\":\"/guides/9_pricing/\"}],\"logo\":\"https://raw.githubusercontent.com/ForkbombEu/DIDroom/45a5ffb737d81c33449bf2d394627a88ddbfc1d0/images/DIDroom_logo.svg\",\"sidebar\":[{\"text\":\"πŸ“– Introduction\",\"link\":\"/intro\"},{\"text\":\"πŸ—οΈ Core Technologies\",\"link\":\"/core-technologies\"},{\"text\":\"πŸ’‘ The Solution\",\"link\":\"/solution\"},{\"text\":\"🏁 Get started\",\"link\":\"/get_started\"},{\"text\":\"Guides\",\"link\":\"/guides/index.md\",\"items\":[{\"text\":\"πŸ‘©β€βš–οΈ DIDroom Dashboard\",\"link\":\"/guides/1_orgadmin/index.md\",\"items\":[{\"text\":\"Setup an authorization server metadata\",\"link\":\"/guides/1_orgadmin/auth_server\"},{\"text\":\"Create an organization\",\"link\":\"/guides/1_orgadmin/create\"},{\"text\":\"Setup a credential issuer metadata\",\"link\":\"/guides/1_orgadmin/credential_issuer\"},{\"text\":\"Create a fully working credential issuing flow\",\"link\":\"/guides/1_orgadmin/issuance_flow\"},{\"text\":\"Support\",\"link\":\"/guides/1_orgadmin/support\"}],\"collapsed\":false},{\"text\":\"πŸ†” Wallet App \",\"link\":\"/guides/2_wallet/index.md\",\"items\":[{\"text\":\"Create a user account (or login)\",\"link\":\"/guides/2_wallet/1_register\"},{\"text\":\"Join organization\",\"link\":\"/guides/2_wallet/2_join_org\"},{\"text\":\"Request a credential \",\"link\":\"/guides/2_wallet/3_get_credential\"},{\"text\":\"Present a credential\",\"link\":\"/guides/2_wallet/4_present_credential\"},{\"text\":\"Preference page\",\"link\":\"/guides/2_wallet/5_preferences\"}],\"collapsed\":false},{\"text\":\"βœ”οΈ Verifier App \",\"link\":\"/guides/3_verifier/index.md\",\"items\":[{\"text\":\"Create an account and join an organization\",\"link\":\"/guides/3_verifier/1_join_org\"},{\"text\":\"Start a Verification Flow\",\"link\":\"/guides/3_verifier/2_verification_flow\"},{\"text\":\"Verification: Success or Failure\",\"link\":\"/guides/3_verifier/3_verify\"}],\"collapsed\":false},{\"text\":\"Coming soon!\",\"link\":\"/guides/404\"},{\"text\":\"πŸ› οΈ System Administrator\",\"link\":\"/guides/4_sysadmin/index.md\",\"items\":[{\"text\":\"Setup the Dashboard\",\"link\":\"/guides/4_sysadmin/setup\"},{\"text\":\"Self-Host the Dashboard\",\"link\":\"/guides/4_sysadmin/setup_dashboard\"},{\"text\":\"Deploy microservices\",\"link\":\"/guides/4_sysadmin/deploy_microservices\"}],\"collapsed\":false},{\"text\":\"πŸ–ŠοΈ Signatures \",\"link\":\"/guides/5_signature/index.md\",\"items\":[{\"text\":\"Signature\",\"link\":\"/guides/5_signature/1_signature\"},{\"text\":\"Multisignature Flow\",\"link\":\"/guides/5_signature/2_multisignature\"}],\"collapsed\":false},{\"text\":\"πŸ“‘ Concepts/Components\",\"link\":\"/guides/6_components/index.md\",\"items\":[{\"text\":\"Keypairoom: (re)generate your Secret Keys \",\"link\":\"/guides/6_components/generate_keys_keypairoom\"},{\"text\":\"Issuance flow\",\"link\":\"/guides/6_components/issuance\"},{\"text\":\"Verification flow\",\"link\":\"/guides/6_components/verification\"}],\"collapsed\":false},{\"text\":\"πŸ—Ž Terms and conditions\",\"link\":\"/guides/7_terms-and-conditions/index.md\",\"items\":[{\"text\":\"delete-account\",\"link\":\"/guides/7_terms-and-conditions/delete-account\"},{\"text\":\"Privacy Policies\",\"link\":\"/guides/7_terms-and-conditions/privacy-policy\"}],\"collapsed\":false},{\"text\":\"🫢🏻 Acknowledgements\",\"link\":\"/guides/8_Acknowledgements/index.md\",\"items\":[],\"collapsed\":false},{\"text\":\"πŸ«±πŸ½β€πŸ«²πŸΏ Pricing πŸ«±πŸΎβ€πŸ«²πŸΌ\",\"link\":\"/guides/9_pricing/index.md\",\"items\":[],\"collapsed\":false}],\"collapsed\":false}],\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/forkbombeu/didroom\"},{\"icon\":\"linkedin\",\"link\":\"https://linkedin.com/company/forkbomb\"}],\"footer\":{\"message\":\"Released under the AGPLv3 License.\",\"copyright\":\"Copyleft πŸ„― 2023-present Forkbomb B.V.\"}},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":false}"); \ No newline at end of file diff --git a/docs/pr-preview/pr-19/assets/guides_1_orgadmin_index.md.B5vI1S-g.js b/docs/pr-preview/pr-19/assets/guides_1_orgadmin_index.md.B5vI1S-g.js index 7079daf..2da7f24 100644 --- a/docs/pr-preview/pr-19/assets/guides_1_orgadmin_index.md.B5vI1S-g.js +++ b/docs/pr-preview/pr-19/assets/guides_1_orgadmin_index.md.B5vI1S-g.js @@ -1 +1 @@ -import{_ as e,c as a,o,a3 as t}from"./chunks/framework.Dcugq_a2.js";const g=JSON.parse('{"title":"πŸ‘©β€βš–οΈ DIDroom Control Room","description":"","frontmatter":{},"headers":[],"relativePath":"guides/1_orgadmin/index.md","filePath":"guides/1_orgadmin/index.md","lastUpdated":1715167532000}'),r={name:"guides/1_orgadmin/index.md"},i=t('

πŸ‘©β€βš–οΈ DIDroom Control Room ​

Welcome, System Administrator! This guide provides step-by-step instructions for oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities.

Create an organization ​

Setup a credential issuer metadata ​

Setup an authorization server metadata ​

Create a fully working credential issuing flow ​

',10),n=[i];function s(d,c,l,u,m,h){return o(),a("div",null,n)}const f=e(r,[["render",s]]);export{g as __pageData,f as default}; +import{_ as e,c as a,o,a3 as t}from"./chunks/framework.Dcugq_a2.js";const g=JSON.parse('{"title":"πŸ‘©β€βš–οΈ DIDroom Dashboard","description":"","frontmatter":{},"headers":[],"relativePath":"guides/1_orgadmin/index.md","filePath":"guides/1_orgadmin/index.md","lastUpdated":1715167532000}'),r={name:"guides/1_orgadmin/index.md"},i=t('

πŸ‘©β€βš–οΈ DIDroom Dashboard ​

Welcome, System Administrator! This guide provides step-by-step instructions for oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities.

Create an organization ​

Setup a credential issuer metadata ​

Setup an authorization server metadata ​

Create a fully working credential issuing flow ​

',10),n=[i];function s(d,c,l,u,m,h){return o(),a("div",null,n)}const f=e(r,[["render",s]]);export{g as __pageData,f as default}; diff --git a/docs/pr-preview/pr-19/assets/guides_1_orgadmin_index.md.B5vI1S-g.lean.js b/docs/pr-preview/pr-19/assets/guides_1_orgadmin_index.md.B5vI1S-g.lean.js index f73b152..c4b616a 100644 --- a/docs/pr-preview/pr-19/assets/guides_1_orgadmin_index.md.B5vI1S-g.lean.js +++ b/docs/pr-preview/pr-19/assets/guides_1_orgadmin_index.md.B5vI1S-g.lean.js @@ -1 +1 @@ -import{_ as e,c as a,o,a3 as t}from"./chunks/framework.Dcugq_a2.js";const g=JSON.parse('{"title":"πŸ‘©β€βš–οΈ DIDroom Control Room","description":"","frontmatter":{},"headers":[],"relativePath":"guides/1_orgadmin/index.md","filePath":"guides/1_orgadmin/index.md","lastUpdated":1715167532000}'),r={name:"guides/1_orgadmin/index.md"},i=t("",10),n=[i];function s(d,c,l,u,m,h){return o(),a("div",null,n)}const f=e(r,[["render",s]]);export{g as __pageData,f as default}; +import{_ as e,c as a,o,a3 as t}from"./chunks/framework.Dcugq_a2.js";const g=JSON.parse('{"title":"πŸ‘©β€βš–οΈ DIDroom Dashboard","description":"","frontmatter":{},"headers":[],"relativePath":"guides/1_orgadmin/index.md","filePath":"guides/1_orgadmin/index.md","lastUpdated":1715167532000}'),r={name:"guides/1_orgadmin/index.md"},i=t("",10),n=[i];function s(d,c,l,u,m,h){return o(),a("div",null,n)}const f=e(r,[["render",s]]);export{g as __pageData,f as default}; diff --git a/docs/pr-preview/pr-19/assets/guides_2_wallet_1_register.md.DwKfvmya.js b/docs/pr-preview/pr-19/assets/guides_2_wallet_1_register.md.DwKfvmya.js index 07c9949..a6ca70e 100644 --- a/docs/pr-preview/pr-19/assets/guides_2_wallet_1_register.md.DwKfvmya.js +++ b/docs/pr-preview/pr-19/assets/guides_2_wallet_1_register.md.DwKfvmya.js @@ -1 +1 @@ -import{_ as a,c as o,o as r,m as e,a as t}from"./chunks/framework.Dcugq_a2.js";const f=JSON.parse('{"title":"Create a user account (or login)","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/1_register.md","filePath":"guides/2_wallet/1_register.md","lastUpdated":1724850508000}'),n={name:"guides/2_wallet/1_register.md"},s=e("h1",{id:"create-a-user-account-or-login",tabindex:"-1"},[t("Create a user account (or login) "),e("a",{class:"header-anchor",href:"#create-a-user-account-or-login","aria-label":'Permalink to "Create a user account (or login)"'},"​")],-1),c=e("p",null,[t("You can create an account in the Wallet, or you can login using an account that previously registered on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room"),t(". In both cases you'll need to generate your secret keys, using "),e("a",{href:"./../6_components/generate_keys_keypairoom.html"},"Keypairoom")],-1),i=[s,c];function l(d,_,u,g,h,m){return r(),o("div",null,i)}const y=a(n,[["render",l]]);export{f as __pageData,y as default}; +import{_ as a,c as o,o as r,m as e,a as t}from"./chunks/framework.Dcugq_a2.js";const f=JSON.parse('{"title":"Create a user account (or login)","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/1_register.md","filePath":"guides/2_wallet/1_register.md","lastUpdated":1724850508000}'),n={name:"guides/2_wallet/1_register.md"},s=e("h1",{id:"create-a-user-account-or-login",tabindex:"-1"},[t("Create a user account (or login) "),e("a",{class:"header-anchor",href:"#create-a-user-account-or-login","aria-label":'Permalink to "Create a user account (or login)"'},"​")],-1),c=e("p",null,[t("You can create an account in the Wallet, or you can login using an account that previously registered on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard"),t(". In both cases you'll need to generate your secret keys, using "),e("a",{href:"./../6_components/generate_keys_keypairoom.html"},"Keypairoom")],-1),i=[s,c];function l(d,_,u,g,h,m){return r(),o("div",null,i)}const y=a(n,[["render",l]]);export{f as __pageData,y as default}; diff --git a/docs/pr-preview/pr-19/assets/guides_2_wallet_1_register.md.DwKfvmya.lean.js b/docs/pr-preview/pr-19/assets/guides_2_wallet_1_register.md.DwKfvmya.lean.js index 07c9949..a6ca70e 100644 --- a/docs/pr-preview/pr-19/assets/guides_2_wallet_1_register.md.DwKfvmya.lean.js +++ b/docs/pr-preview/pr-19/assets/guides_2_wallet_1_register.md.DwKfvmya.lean.js @@ -1 +1 @@ -import{_ as a,c as o,o as r,m as e,a as t}from"./chunks/framework.Dcugq_a2.js";const f=JSON.parse('{"title":"Create a user account (or login)","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/1_register.md","filePath":"guides/2_wallet/1_register.md","lastUpdated":1724850508000}'),n={name:"guides/2_wallet/1_register.md"},s=e("h1",{id:"create-a-user-account-or-login",tabindex:"-1"},[t("Create a user account (or login) "),e("a",{class:"header-anchor",href:"#create-a-user-account-or-login","aria-label":'Permalink to "Create a user account (or login)"'},"​")],-1),c=e("p",null,[t("You can create an account in the Wallet, or you can login using an account that previously registered on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room"),t(". In both cases you'll need to generate your secret keys, using "),e("a",{href:"./../6_components/generate_keys_keypairoom.html"},"Keypairoom")],-1),i=[s,c];function l(d,_,u,g,h,m){return r(),o("div",null,i)}const y=a(n,[["render",l]]);export{f as __pageData,y as default}; +import{_ as a,c as o,o as r,m as e,a as t}from"./chunks/framework.Dcugq_a2.js";const f=JSON.parse('{"title":"Create a user account (or login)","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/1_register.md","filePath":"guides/2_wallet/1_register.md","lastUpdated":1724850508000}'),n={name:"guides/2_wallet/1_register.md"},s=e("h1",{id:"create-a-user-account-or-login",tabindex:"-1"},[t("Create a user account (or login) "),e("a",{class:"header-anchor",href:"#create-a-user-account-or-login","aria-label":'Permalink to "Create a user account (or login)"'},"​")],-1),c=e("p",null,[t("You can create an account in the Wallet, or you can login using an account that previously registered on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard"),t(". In both cases you'll need to generate your secret keys, using "),e("a",{href:"./../6_components/generate_keys_keypairoom.html"},"Keypairoom")],-1),i=[s,c];function l(d,_,u,g,h,m){return r(),o("div",null,i)}const y=a(n,[["render",l]]);export{f as __pageData,y as default}; diff --git a/docs/pr-preview/pr-19/assets/guides_2_wallet_2_join_org.md.BL0Rgw6Y.js b/docs/pr-preview/pr-19/assets/guides_2_wallet_2_join_org.md.BL0Rgw6Y.js index fb04862..f158283 100644 --- a/docs/pr-preview/pr-19/assets/guides_2_wallet_2_join_org.md.BL0Rgw6Y.js +++ b/docs/pr-preview/pr-19/assets/guides_2_wallet_2_join_org.md.BL0Rgw6Y.js @@ -1 +1 @@ -import{_ as a,c as o,o as e,a3 as n}from"./chunks/framework.Dcugq_a2.js";const u=JSON.parse('{"title":"Join organization","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/2_join_org.md","filePath":"guides/2_wallet/2_join_org.md","lastUpdated":1715167532000}'),t={name:"guides/2_wallet/2_join_org.md"},i=n('

Join organization ​

Ideally you'd want to join an organization after you created an account on the wallet. Managing users in organization is happening in the DIDroom Control Room, there are multiple ways to do that:

  • You can request to join an organization from My organizations > Join an organization
  • As organization manager you can invite a user to join, from the organization page, go to Members > Add member

Member of an organization ​

Once you have joined an organization you will see in your Wallet's home page, the list of the credentials that the organization is offering. Meaning that you can click on the credential's card to request it.

',5),r=[i];function l(s,_,d,g,c,h){return e(),o("div",null,r)}const f=a(t,[["render",l]]);export{u as __pageData,f as default}; +import{_ as a,c as o,o as e,a3 as n}from"./chunks/framework.Dcugq_a2.js";const u=JSON.parse('{"title":"Join organization","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/2_join_org.md","filePath":"guides/2_wallet/2_join_org.md","lastUpdated":1715167532000}'),t={name:"guides/2_wallet/2_join_org.md"},i=n('

Join organization ​

Ideally you'd want to join an organization after you created an account on the wallet. Managing users in organization is happening in the DIDroom Dashboard, there are multiple ways to do that:

  • You can request to join an organization from My organizations > Join an organization
  • As organization manager you can invite a user to join, from the organization page, go to Members > Add member

Member of an organization ​

Once you have joined an organization you will see in your Wallet's home page, the list of the credentials that the organization is offering. Meaning that you can click on the credential's card to request it.

',5),r=[i];function l(s,_,d,g,c,h){return e(),o("div",null,r)}const f=a(t,[["render",l]]);export{u as __pageData,f as default}; diff --git a/docs/pr-preview/pr-19/assets/guides_2_wallet_3_get_credential.md.D35u6qjt.js b/docs/pr-preview/pr-19/assets/guides_2_wallet_3_get_credential.md.D35u6qjt.js index a1186df..40cc2bf 100644 --- a/docs/pr-preview/pr-19/assets/guides_2_wallet_3_get_credential.md.D35u6qjt.js +++ b/docs/pr-preview/pr-19/assets/guides_2_wallet_3_get_credential.md.D35u6qjt.js @@ -1 +1 @@ -import{_ as e,c as a,o as t,a3 as r}from"./chunks/framework.Dcugq_a2.js";const m=JSON.parse('{"title":"Request a credential","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/3_get_credential.md","filePath":"guides/2_wallet/3_get_credential.md","lastUpdated":1715167532000}'),o={name:"guides/2_wallet/3_get_credential.md"},n=r('

Request a credential ​

A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer.

After you have created an account and logged in, you can request a credential in multiple ways:

  • From the Wallet's home page: you can request all the credentials that have been created as "public" in the DIDroom Control Room.
  • By scanning a QR-Code: you can re-quest a credential. The Wallet is compatible with the OpenID4VCI standard, so you should be able to request (and receive) credentials also from Credential Issuers which are setup or connected to DIDroom.

Your credentials ​

You can browse the credentials you received in the Wallet page of the Wallet (D'Oh!), they will be listed as cards and show you the issuer that produced them, their expiry and descriptions.

',6),i=[n];function s(l,d,c,h,u,_){return t(),a("div",null,i)}const f=e(o,[["render",s]]);export{m as __pageData,f as default}; +import{_ as e,c as a,o as t,a3 as r}from"./chunks/framework.Dcugq_a2.js";const m=JSON.parse('{"title":"Request a credential","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/3_get_credential.md","filePath":"guides/2_wallet/3_get_credential.md","lastUpdated":1715167532000}'),o={name:"guides/2_wallet/3_get_credential.md"},n=r('

Request a credential ​

A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer.

After you have created an account and logged in, you can request a credential in multiple ways:

  • From the Wallet's home page: you can request all the credentials that have been created as "public" in the DIDroom Dashboard.
  • By scanning a QR-Code: you can re-quest a credential. The Wallet is compatible with the OpenID4VCI standard, so you should be able to request (and receive) credentials also from Credential Issuers which are setup or connected to DIDroom.

Your credentials ​

You can browse the credentials you received in the Wallet page of the Wallet (D'Oh!), they will be listed as cards and show you the issuer that produced them, their expiry and descriptions.

',6),i=[n];function s(l,d,c,h,u,_){return t(),a("div",null,i)}const f=e(o,[["render",s]]);export{m as __pageData,f as default}; diff --git a/docs/pr-preview/pr-19/assets/guides_2_wallet_index.md.x4zizmFt.js b/docs/pr-preview/pr-19/assets/guides_2_wallet_index.md.x4zizmFt.js index 0139164..add20f4 100644 --- a/docs/pr-preview/pr-19/assets/guides_2_wallet_index.md.x4zizmFt.js +++ b/docs/pr-preview/pr-19/assets/guides_2_wallet_index.md.x4zizmFt.js @@ -1 +1 @@ -import{_ as e,c as t,o as a,a3 as o}from"./chunks/framework.Dcugq_a2.js";const m=JSON.parse('{"title":"πŸ†” Wallet App","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/index.md","filePath":"guides/2_wallet/index.md","lastUpdated":1715167532000}'),r={name:"guides/2_wallet/index.md"},l=o('

πŸ†” Wallet App ​

The Wallet App is an Android/iOS mobile app whose purpose is to request and present credentials.

The Wallet App allows the user to creat an account and the same account can be used to login onto the DIDroom Control Room.

Features ​

Once you login, you can:

  • Select a credential to request, from the list you can see in the Wallet's home. The credentials that you see listed here, depend on what organization(s) your part of.
  • Scan a QR code to receive a credential
  • Scan a QR code (from the Verifier App) to present a credential.
',6),n=[l];function s(i,d,c,p,h,u){return a(),t("div",null,n)}const f=e(r,[["render",s]]);export{m as __pageData,f as default}; +import{_ as e,c as t,o as a,a3 as o}from"./chunks/framework.Dcugq_a2.js";const m=JSON.parse('{"title":"πŸ†” Wallet App","description":"","frontmatter":{},"headers":[],"relativePath":"guides/2_wallet/index.md","filePath":"guides/2_wallet/index.md","lastUpdated":1715167532000}'),r={name:"guides/2_wallet/index.md"},l=o('

πŸ†” Wallet App ​

The Wallet App is an Android/iOS mobile app whose purpose is to request and present credentials.

The Wallet App allows the user to creat an account and the same account can be used to login onto the DIDroom Dashboard.

Features ​

Once you login, you can:

  • Select a credential to request, from the list you can see in the Wallet's home. The credentials that you see listed here, depend on what organization(s) your part of.
  • Scan a QR code to receive a credential
  • Scan a QR code (from the Verifier App) to present a credential.
',6),n=[l];function s(i,d,c,p,h,u){return a(),t("div",null,n)}const f=e(r,[["render",s]]);export{m as __pageData,f as default}; diff --git a/docs/pr-preview/pr-19/assets/guides_3_verifier_1_join_org.md.Dq5D-GDE.js b/docs/pr-preview/pr-19/assets/guides_3_verifier_1_join_org.md.Dq5D-GDE.js index a5cb836..6fb98cb 100644 --- a/docs/pr-preview/pr-19/assets/guides_3_verifier_1_join_org.md.Dq5D-GDE.js +++ b/docs/pr-preview/pr-19/assets/guides_3_verifier_1_join_org.md.Dq5D-GDE.js @@ -1 +1 @@ -import{_ as e,c as n,o as t,m as a,a as o}from"./chunks/framework.Dcugq_a2.js";const b=JSON.parse('{"title":"Create an account and join an organization","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/1_join_org.md","filePath":"guides/3_verifier/1_join_org.md","lastUpdated":1715167532000}'),r={name:"guides/3_verifier/1_join_org.md"},i=a("h1",{id:"create-an-account-and-join-an-organization",tabindex:"-1"},[o("Create an account and join an organization "),a("a",{class:"header-anchor",href:"#create-an-account-and-join-an-organization","aria-label":'Permalink to "Create an account and join an organization"'},"​")],-1),s=a("p",null,"In order to use the Verifier app and the Verification Flow, the user is supposed to:",-1),c=a("ol",null,[a("li",null,[o("have an account on "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room")]),a("li",null,"be part of an organization")],-1),d=a("p",null,[o("The Verifier only allows a user to login (with an existing account), meaning that an account has to be created on the "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room"),o(" or in the Wallet")],-1),l=[i,s,c,d];function _(h,u,p,f,m,g){return t(),n("div",null,l)}const v=e(r,[["render",_]]);export{b as __pageData,v as default}; +import{_ as e,c as n,o as t,m as a,a as o}from"./chunks/framework.Dcugq_a2.js";const b=JSON.parse('{"title":"Create an account and join an organization","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/1_join_org.md","filePath":"guides/3_verifier/1_join_org.md","lastUpdated":1715167532000}'),r={name:"guides/3_verifier/1_join_org.md"},i=a("h1",{id:"create-an-account-and-join-an-organization",tabindex:"-1"},[o("Create an account and join an organization "),a("a",{class:"header-anchor",href:"#create-an-account-and-join-an-organization","aria-label":'Permalink to "Create an account and join an organization"'},"​")],-1),s=a("p",null,"In order to use the Verifier app and the Verification Flow, the user is supposed to:",-1),c=a("ol",null,[a("li",null,[o("have an account on "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard")]),a("li",null,"be part of an organization")],-1),d=a("p",null,[o("The Verifier only allows a user to login (with an existing account), meaning that an account has to be created on the "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard"),o(" or in the Wallet")],-1),l=[i,s,c,d];function _(h,u,p,f,m,g){return t(),n("div",null,l)}const v=e(r,[["render",_]]);export{b as __pageData,v as default}; diff --git a/docs/pr-preview/pr-19/assets/guides_3_verifier_1_join_org.md.Dq5D-GDE.lean.js b/docs/pr-preview/pr-19/assets/guides_3_verifier_1_join_org.md.Dq5D-GDE.lean.js index a5cb836..6fb98cb 100644 --- a/docs/pr-preview/pr-19/assets/guides_3_verifier_1_join_org.md.Dq5D-GDE.lean.js +++ b/docs/pr-preview/pr-19/assets/guides_3_verifier_1_join_org.md.Dq5D-GDE.lean.js @@ -1 +1 @@ -import{_ as e,c as n,o as t,m as a,a as o}from"./chunks/framework.Dcugq_a2.js";const b=JSON.parse('{"title":"Create an account and join an organization","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/1_join_org.md","filePath":"guides/3_verifier/1_join_org.md","lastUpdated":1715167532000}'),r={name:"guides/3_verifier/1_join_org.md"},i=a("h1",{id:"create-an-account-and-join-an-organization",tabindex:"-1"},[o("Create an account and join an organization "),a("a",{class:"header-anchor",href:"#create-an-account-and-join-an-organization","aria-label":'Permalink to "Create an account and join an organization"'},"​")],-1),s=a("p",null,"In order to use the Verifier app and the Verification Flow, the user is supposed to:",-1),c=a("ol",null,[a("li",null,[o("have an account on "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room")]),a("li",null,"be part of an organization")],-1),d=a("p",null,[o("The Verifier only allows a user to login (with an existing account), meaning that an account has to be created on the "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room"),o(" or in the Wallet")],-1),l=[i,s,c,d];function _(h,u,p,f,m,g){return t(),n("div",null,l)}const v=e(r,[["render",_]]);export{b as __pageData,v as default}; +import{_ as e,c as n,o as t,m as a,a as o}from"./chunks/framework.Dcugq_a2.js";const b=JSON.parse('{"title":"Create an account and join an organization","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/1_join_org.md","filePath":"guides/3_verifier/1_join_org.md","lastUpdated":1715167532000}'),r={name:"guides/3_verifier/1_join_org.md"},i=a("h1",{id:"create-an-account-and-join-an-organization",tabindex:"-1"},[o("Create an account and join an organization "),a("a",{class:"header-anchor",href:"#create-an-account-and-join-an-organization","aria-label":'Permalink to "Create an account and join an organization"'},"​")],-1),s=a("p",null,"In order to use the Verifier app and the Verification Flow, the user is supposed to:",-1),c=a("ol",null,[a("li",null,[o("have an account on "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard")]),a("li",null,"be part of an organization")],-1),d=a("p",null,[o("The Verifier only allows a user to login (with an existing account), meaning that an account has to be created on the "),a("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard"),o(" or in the Wallet")],-1),l=[i,s,c,d];function _(h,u,p,f,m,g){return t(),n("div",null,l)}const v=e(r,[["render",_]]);export{b as __pageData,v as default}; diff --git a/docs/pr-preview/pr-19/assets/guides_3_verifier_index.md.J5EOQLoL.js b/docs/pr-preview/pr-19/assets/guides_3_verifier_index.md.J5EOQLoL.js index 81ec9a4..c1c7761 100644 --- a/docs/pr-preview/pr-19/assets/guides_3_verifier_index.md.J5EOQLoL.js +++ b/docs/pr-preview/pr-19/assets/guides_3_verifier_index.md.J5EOQLoL.js @@ -1 +1 @@ -import{_ as t,c as a,o,m as e,a as r}from"./chunks/framework.Dcugq_a2.js";const g=JSON.parse('{"title":"βœ”οΈ Verifier App","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/index.md","filePath":"guides/3_verifier/index.md","lastUpdated":1715167532000}'),i={name:"guides/3_verifier/index.md"},n=e("h1",{id:"βœ”οΈ-verifier-app",tabindex:"-1"},[r("βœ”οΈ Verifier App "),e("a",{class:"header-anchor",href:"#βœ”οΈ-verifier-app","aria-label":'Permalink to "βœ”οΈ Verifier App"'},"​")],-1),s=e("p",null,[r("The "),e("a",{href:"https://github.com/ForkbombEu/verifier",target:"_blank",rel:"noreferrer"},"Verifier App "),r(" is an Android/iOS mobile app whose purpose is to start a "),e("strong",null,"Verification Flow"),r(".")],-1),d=e("p",null,[r("The Verifer App requires the user to have created an account (and ideally be part of an organization), so an account needs to be created on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room"),r(" or in the Wallet.")],-1),p=[n,s,d];function c(l,f,h,_,m,u){return o(),a("div",null,p)}const v=t(i,[["render",c]]);export{g as __pageData,v as default}; +import{_ as t,c as a,o,m as e,a as r}from"./chunks/framework.Dcugq_a2.js";const g=JSON.parse('{"title":"βœ”οΈ Verifier App","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/index.md","filePath":"guides/3_verifier/index.md","lastUpdated":1715167532000}'),i={name:"guides/3_verifier/index.md"},n=e("h1",{id:"βœ”οΈ-verifier-app",tabindex:"-1"},[r("βœ”οΈ Verifier App "),e("a",{class:"header-anchor",href:"#βœ”οΈ-verifier-app","aria-label":'Permalink to "βœ”οΈ Verifier App"'},"​")],-1),s=e("p",null,[r("The "),e("a",{href:"https://github.com/ForkbombEu/verifier",target:"_blank",rel:"noreferrer"},"Verifier App "),r(" is an Android/iOS mobile app whose purpose is to start a "),e("strong",null,"Verification Flow"),r(".")],-1),d=e("p",null,[r("The Verifer App requires the user to have created an account (and ideally be part of an organization), so an account needs to be created on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard"),r(" or in the Wallet.")],-1),p=[n,s,d];function c(l,f,h,_,m,u){return o(),a("div",null,p)}const v=t(i,[["render",c]]);export{g as __pageData,v as default}; diff --git a/docs/pr-preview/pr-19/assets/guides_3_verifier_index.md.J5EOQLoL.lean.js b/docs/pr-preview/pr-19/assets/guides_3_verifier_index.md.J5EOQLoL.lean.js index 81ec9a4..c1c7761 100644 --- a/docs/pr-preview/pr-19/assets/guides_3_verifier_index.md.J5EOQLoL.lean.js +++ b/docs/pr-preview/pr-19/assets/guides_3_verifier_index.md.J5EOQLoL.lean.js @@ -1 +1 @@ -import{_ as t,c as a,o,m as e,a as r}from"./chunks/framework.Dcugq_a2.js";const g=JSON.parse('{"title":"βœ”οΈ Verifier App","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/index.md","filePath":"guides/3_verifier/index.md","lastUpdated":1715167532000}'),i={name:"guides/3_verifier/index.md"},n=e("h1",{id:"βœ”οΈ-verifier-app",tabindex:"-1"},[r("βœ”οΈ Verifier App "),e("a",{class:"header-anchor",href:"#βœ”οΈ-verifier-app","aria-label":'Permalink to "βœ”οΈ Verifier App"'},"​")],-1),s=e("p",null,[r("The "),e("a",{href:"https://github.com/ForkbombEu/verifier",target:"_blank",rel:"noreferrer"},"Verifier App "),r(" is an Android/iOS mobile app whose purpose is to start a "),e("strong",null,"Verification Flow"),r(".")],-1),d=e("p",null,[r("The Verifer App requires the user to have created an account (and ideally be part of an organization), so an account needs to be created on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Control Room"),r(" or in the Wallet.")],-1),p=[n,s,d];function c(l,f,h,_,m,u){return o(),a("div",null,p)}const v=t(i,[["render",c]]);export{g as __pageData,v as default}; +import{_ as t,c as a,o,m as e,a as r}from"./chunks/framework.Dcugq_a2.js";const g=JSON.parse('{"title":"βœ”οΈ Verifier App","description":"","frontmatter":{},"headers":[],"relativePath":"guides/3_verifier/index.md","filePath":"guides/3_verifier/index.md","lastUpdated":1715167532000}'),i={name:"guides/3_verifier/index.md"},n=e("h1",{id:"βœ”οΈ-verifier-app",tabindex:"-1"},[r("βœ”οΈ Verifier App "),e("a",{class:"header-anchor",href:"#βœ”οΈ-verifier-app","aria-label":'Permalink to "βœ”οΈ Verifier App"'},"​")],-1),s=e("p",null,[r("The "),e("a",{href:"https://github.com/ForkbombEu/verifier",target:"_blank",rel:"noreferrer"},"Verifier App "),r(" is an Android/iOS mobile app whose purpose is to start a "),e("strong",null,"Verification Flow"),r(".")],-1),d=e("p",null,[r("The Verifer App requires the user to have created an account (and ideally be part of an organization), so an account needs to be created on the "),e("a",{href:"https://dashboard.didroom.com/",target:"_blank",rel:"noreferrer"},"DIDroom Dashboard"),r(" or in the Wallet.")],-1),p=[n,s,d];function c(l,f,h,_,m,u){return o(),a("div",null,p)}const v=t(i,[["render",c]]);export{g as __pageData,v as default}; diff --git a/docs/pr-preview/pr-19/assets/guides_4_sysadmin_setup.md.BxOShMJm.js b/docs/pr-preview/pr-19/assets/guides_4_sysadmin_setup.md.BxOShMJm.js index f6afea7..9373250 100644 --- a/docs/pr-preview/pr-19/assets/guides_4_sysadmin_setup.md.BxOShMJm.js +++ b/docs/pr-preview/pr-19/assets/guides_4_sysadmin_setup.md.BxOShMJm.js @@ -1,2 +1,2 @@ -import{_ as e,c as a,o,a3 as t}from"./chunks/framework.Dcugq_a2.js";const g=JSON.parse('{"title":"Setup the Dashboard","description":"","frontmatter":{},"headers":[],"relativePath":"guides/4_sysadmin/setup.md","filePath":"guides/4_sysadmin/setup.md","lastUpdated":1719825213000}'),s={name:"guides/4_sysadmin/setup.md"},i=t(`

Setup the Dashboard ​

for πŸ› οΈ System Administrator ​

For users who prefer full control over their infrastructure and data, Didroom supports on-premise deployment. Follow these steps to deploy the DIDroom Dashboard on your own infrastructure:

TIP

If you are unfamiliar with servers, devops and unix commands look also at the Software as a service section that will allow you to define a credential issuance flow in minutes! Without installing anything on your servers.

Checklist

Before starting please make sure you have a

  1. Git installed on your server
  2. Docker compose installed on your server
  3. DID admin domain/context as specified on dyne/W3C-DID

1. clone the repo ​

bash
git clone --recursive https://github.com/forkbombeu/signroom

WARNING

Pay attention at the --recursive that will clone also the sub repositories!

2. Run the Dashboard (Admin Panel and DIDroom Control Room) ​

bash
cd signroom
-docker compose up --build

This will run the DIDroom Dashboard which includes two interconnected web-applications:

  • Admin Panel: based on PocketBase, this application is accessible only to the sysadmin and it allows to configure and edit data structure and API configurations.
  • DIDroom Control Room: this the DIDroom web application accessible to all users, allows to manage credential issuance and verification flows and their deployment and the organizations

The two web applications run on two different ports and have different user accounts.

3. Create an account and log in onto the DIDroom Control Room ​

Go to:

http
http://localhost:4173/

Register a new uer and log in. From this point, you should be able to create an organization, and from there you can create issuance and verification flows, etc.

4. login onto to the Admin Panel ​

Go to:

http
http://localhost:8090/_

TIP

Pay attention at the final underscore, of the address

A default administrator user is created with the following user and pass:

user: admin@example.org

pass: adminadmin

5. Setup the DID service ​

DIDroom uses the Dyne's DID service as a public key infrastructure. You can choose to ask us (Forkbomb or Dyne.org) to provide you the admin data, or deploy Dyne's DID service on your server.

You can ask for your admin domain/context as specified on dyne/W3C-DID

Follow the video:

  1. login into the dashboard
  2. go on the features collection
  3. select the DID feature
  4. insert you admin data
`,31),n=[i];function r(l,d,h,c,p,u){return o(),a("div",null,n)}const b=e(s,[["render",r]]);export{g as __pageData,b as default}; +import{_ as e,c as a,o,a3 as t}from"./chunks/framework.Dcugq_a2.js";const g=JSON.parse('{"title":"Setup the Dashboard","description":"","frontmatter":{},"headers":[],"relativePath":"guides/4_sysadmin/setup.md","filePath":"guides/4_sysadmin/setup.md","lastUpdated":1719825213000}'),s={name:"guides/4_sysadmin/setup.md"},i=t(`

Setup the Dashboard ​

for πŸ› οΈ System Administrator ​

For users who prefer full control over their infrastructure and data, Didroom supports on-premise deployment. Follow these steps to deploy the DIDroom Dashboard on your own infrastructure:

TIP

If you are unfamiliar with servers, devops and unix commands look also at the Software as a service section that will allow you to define a credential issuance flow in minutes! Without installing anything on your servers.

Checklist

Before starting please make sure you have a

  1. Git installed on your server
  2. Docker compose installed on your server
  3. DID admin domain/context as specified on dyne/W3C-DID

1. clone the repo ​

bash
git clone --recursive https://github.com/forkbombeu/signroom

WARNING

Pay attention at the --recursive that will clone also the sub repositories!

2. Run the Dashboard (Admin Panel and DIDroom Dashboard) ​

bash
cd signroom
+docker compose up --build

This will run the DIDroom Dashboard which includes two interconnected web-applications:

  • Admin Panel: based on PocketBase, this application is accessible only to the sysadmin and it allows to configure and edit data structure and API configurations.
  • DIDroom Dashboard: this the DIDroom web application accessible to all users, allows to manage credential issuance and verification flows and their deployment and the organizations

The two web applications run on two different ports and have different user accounts.

3. Create an account and log in onto the DIDroom Dashboard ​

Go to:

http
http://localhost:4173/

Register a new uer and log in. From this point, you should be able to create an organization, and from there you can create issuance and verification flows, etc.

4. login onto to the Admin Panel ​

Go to:

http
http://localhost:8090/_

TIP

Pay attention at the final underscore, of the address

A default administrator user is created with the following user and pass:

user: admin@example.org

pass: adminadmin

5. Setup the DID service ​

DIDroom uses the Dyne's DID service as a public key infrastructure. You can choose to ask us (Forkbomb or Dyne.org) to provide you the admin data, or deploy Dyne's DID service on your server.

You can ask for your admin domain/context as specified on dyne/W3C-DID

Follow the video:

  1. login into the dashboard
  2. go on the features collection
  3. select the DID feature
  4. insert you admin data
`,31),n=[i];function r(l,d,h,c,p,u){return o(),a("div",null,n)}const b=e(s,[["render",r]]);export{g as __pageData,b as default}; diff --git a/docs/pr-preview/pr-19/assets/guides_6_components_generate_keys_keypairoom.md.Bw1C6GKu.js b/docs/pr-preview/pr-19/assets/guides_6_components_generate_keys_keypairoom.md.Bw1C6GKu.js index eb4f9b9..3c5a810 100644 --- a/docs/pr-preview/pr-19/assets/guides_6_components_generate_keys_keypairoom.md.Bw1C6GKu.js +++ b/docs/pr-preview/pr-19/assets/guides_6_components_generate_keys_keypairoom.md.Bw1C6GKu.js @@ -1 +1 @@ -import{_ as e,c as t,o,a3 as r}from"./chunks/framework.Dcugq_a2.js";const m=JSON.parse('{"title":"Keypairoom: (re)generate your Secret Keys","description":"","frontmatter":{},"headers":[],"relativePath":"guides/6_components/generate_keys_keypairoom.md","filePath":"guides/6_components/generate_keys_keypairoom.md","lastUpdated":1724850132000}'),a={name:"guides/6_components/generate_keys_keypairoom.md"},n=r('

Keypairoom: (re)generate your Secret Keys ​

Keypairoom is component to generate and regenerate a keyring, containing multiple secret keys (along with the correspondet public keys) in a deterministic and private way.

The cryptographic part consists of multiple Zenroom scripts that allows you to generate a seed by answering to questions that (probably) only you can respond, namely "The challenges".

Privacy ​

The challenges are processed inside the client applications (the Wallet App or the browser where you opened the DIDroom Control Room. Note:

  • The Zenroom scripts processing the answers work offline.
  • Your answers are never communicated to any external service.
  • No one can reconstruct them based on their output: this is certain based on the math behind it, if you're curious you can read about it here.
  • The answers are not used to identify you in anyway, they are just some text that only you can write and belong to your past, so it should not change over time.

More about privacy ​

We hear you saying:

I don't want to answer any question I don't trust writing my personal data anywhere... what now?

So you don't want to write private data anywhere, cause you don't trust software security ever? We (the developers) understand you well and share your feelings πŸ˜ƒ

TLDR: answer using random text and save the seed!

If that's the case, no problem at all: you can just answer to the challenges with some random/junk text. After your secret keys are created, you are offered to store the seed: the seed is a piece of data, printed as a mnemonic phrase that will allow you to re-generate the same secret keys at any time.

What does a mmnemonic phrase look like? Like this:

mnemonic
expect cart barely fruit learn tortoise work essence guitar

If you log out from the wallet, or try to login onto a new device (or browser), you are given the option to paste your seed: therefore store your seed in a safe place, it will work forever, no matter what you answered in that challenges.

',15),s=[n];function i(l,c,p,h,u,d){return o(),t("div",null,s)}const g=e(a,[["render",i]]);export{m as __pageData,g as default}; +import{_ as e,c as t,o,a3 as r}from"./chunks/framework.Dcugq_a2.js";const m=JSON.parse('{"title":"Keypairoom: (re)generate your Secret Keys","description":"","frontmatter":{},"headers":[],"relativePath":"guides/6_components/generate_keys_keypairoom.md","filePath":"guides/6_components/generate_keys_keypairoom.md","lastUpdated":1724850132000}'),a={name:"guides/6_components/generate_keys_keypairoom.md"},n=r('

Keypairoom: (re)generate your Secret Keys ​

Keypairoom is component to generate and regenerate a keyring, containing multiple secret keys (along with the correspondet public keys) in a deterministic and private way.

The cryptographic part consists of multiple Zenroom scripts that allows you to generate a seed by answering to questions that (probably) only you can respond, namely "The challenges".

Privacy ​

The challenges are processed inside the client applications (the Wallet App or the browser where you opened the DIDroom Dashboard. Note:

  • The Zenroom scripts processing the answers work offline.
  • Your answers are never communicated to any external service.
  • No one can reconstruct them based on their output: this is certain based on the math behind it, if you're curious you can read about it here.
  • The answers are not used to identify you in anyway, they are just some text that only you can write and belong to your past, so it should not change over time.

More about privacy ​

We hear you saying:

I don't want to answer any question I don't trust writing my personal data anywhere... what now?

So you don't want to write private data anywhere, cause you don't trust software security ever? We (the developers) understand you well and share your feelings πŸ˜ƒ

TLDR: answer using random text and save the seed!

If that's the case, no problem at all: you can just answer to the challenges with some random/junk text. After your secret keys are created, you are offered to store the seed: the seed is a piece of data, printed as a mnemonic phrase that will allow you to re-generate the same secret keys at any time.

What does a mmnemonic phrase look like? Like this:

mnemonic
expect cart barely fruit learn tortoise work essence guitar

If you log out from the wallet, or try to login onto a new device (or browser), you are given the option to paste your seed: therefore store your seed in a safe place, it will work forever, no matter what you answered in that challenges.

',15),s=[n];function i(l,c,p,h,u,d){return o(),t("div",null,s)}const g=e(a,[["render",i]]);export{m as __pageData,g as default}; diff --git a/docs/pr-preview/pr-19/assets/guides_6_components_index.md.CcJ0u-gA.js b/docs/pr-preview/pr-19/assets/guides_6_components_index.md.CcJ0u-gA.js index c14e11b..a09ac9e 100644 --- a/docs/pr-preview/pr-19/assets/guides_6_components_index.md.CcJ0u-gA.js +++ b/docs/pr-preview/pr-19/assets/guides_6_components_index.md.CcJ0u-gA.js @@ -1 +1 @@ -import{_ as e,c as t,o as n,a3 as i}from"./chunks/framework.Dcugq_a2.js";const g=JSON.parse('{"title":"πŸ“‘ Concepts/Components","description":"","frontmatter":{},"headers":[],"relativePath":"guides/6_components/index.md","filePath":"guides/6_components/index.md","lastUpdated":1724850132000}'),a={name:"guides/6_components/index.md"},o=i('

πŸ“‘ Concepts/Components ​

Issuance and Verification Flows ​

The flows contain the general setup for the Issuance and Verification, with focus on the parameters for a specific credential, such as name, description, logo, microservices issueing/verifying those. The business logic and data structures for the Issuance and Verification are contained in templates, which can be selected inside the Issuance and Verification Flows. The complexity within the protocols and cryptography and hidden behind the DIDroom Control room, the specs are in the pages Issuance flow and Verification flow.

Templates ​

they contain the business logic of authorization, issuance and verification flows along with the data structures used in the flows. An issuance flow contains two templates:

  • The Authorization template (governs the business logic of the Authorization Server)
  • The Issuance template (governs the business logic of the Credential Issuance)

The idea behind this separation, is to allow the user mix and re-use templates in multiple credential issuance flows.

The same template can be used in multiple flows, for example for a credential that has 3 different expiries (1 month, 6 months and 12 month). Or for example two Issuance Flows can use the same Authorization template (cause the Authorization process is the same for both) but two different issuance template (cause the Credential Issuer will need to write different data in the two credentials).


Decentralized Identifier (DID): A globally unique, self-sovereign identifier that enables individuals and entities to have control over their digital identities without relying on centralized authorities.

EUDI-ARF: Acronym for "The European Digital Identity Wallet Architecture and Reference Framework," a technical core of the eIDAS 2.0 regulation that outlines standards for digital identity wallets.

eIDAS 2.0 Regulation: The updated version of the eIDAS (electronic Identification, Authentication and Trust Services) regulation that sets standards for electronic identification and trusted services within the European Union.

Self-Sovereign Identity (SSI): A decentralized identity model that enables individuals to have full control over their digital identity and personal data. SSI allows users to manage and share verifiable credentials without the need for intermediaries.

Verifiable Credentials (VC): Digital attestations that enable the issuance and verification of claims about a subject's identity, attributes, or qualifications.

Wallet: In the context of DidRoom, a software application or platform that allows users to manage their digital identities, store cryptographic keys, create and manage DIDs, and interact with blockchain networks and verifiable credentials.

Zero-Knowledge Proofs: Cryptographic methods that allow a party to prove knowledge of a certain value or statement without revealing the actual value itself. Zero-knowledge proofs enhance privacy and security by demonstrating knowledge without disclosing sensitive information.

W3C-DID: Abbreviation for "W3C Decentralized Identifier," a standard by the World Wide Web Consortium (W3C) for creating, managing, and resolving decentralized identifiers.

W3C-VC: Abbreviation for "W3C Verifiable Credentials," a standard by the World Wide Web Consortium (W3C) for creating and verifying digital credentials in a secure and interoperable manner.

Zenroom: A cryptographic virtual machine developed by Dyne.org Foundation, capable of performing various cryptographic operations and supporting blockchain interoperability.

Zenswarm: A blockchain oracle technology developed for blockchain interoperability and off-chain cryptography, utilizing Zenroom at its core.

',20),r=[o];function s(l,c,d,h,p,u){return n(),t("div",null,r)}const m=e(a,[["render",s]]);export{g as __pageData,m as default}; +import{_ as e,c as t,o as n,a3 as i}from"./chunks/framework.Dcugq_a2.js";const g=JSON.parse('{"title":"πŸ“‘ Concepts/Components","description":"","frontmatter":{},"headers":[],"relativePath":"guides/6_components/index.md","filePath":"guides/6_components/index.md","lastUpdated":1724850132000}'),a={name:"guides/6_components/index.md"},o=i('

πŸ“‘ Concepts/Components ​

Issuance and Verification Flows ​

The flows contain the general setup for the Issuance and Verification, with focus on the parameters for a specific credential, such as name, description, logo, microservices issueing/verifying those. The business logic and data structures for the Issuance and Verification are contained in templates, which can be selected inside the Issuance and Verification Flows. The complexity within the protocols and cryptography and hidden behind the DIDroom Dashboard, the specs are in the pages Issuance flow and Verification flow.

Templates ​

they contain the business logic of authorization, issuance and verification flows along with the data structures used in the flows. An issuance flow contains two templates:

  • The Authorization template (governs the business logic of the Authorization Server)
  • The Issuance template (governs the business logic of the Credential Issuance)

The idea behind this separation, is to allow the user mix and re-use templates in multiple credential issuance flows.

The same template can be used in multiple flows, for example for a credential that has 3 different expiries (1 month, 6 months and 12 month). Or for example two Issuance Flows can use the same Authorization template (cause the Authorization process is the same for both) but two different issuance template (cause the Credential Issuer will need to write different data in the two credentials).


Decentralized Identifier (DID): A globally unique, self-sovereign identifier that enables individuals and entities to have control over their digital identities without relying on centralized authorities.

EUDI-ARF: Acronym for "The European Digital Identity Wallet Architecture and Reference Framework," a technical core of the eIDAS 2.0 regulation that outlines standards for digital identity wallets.

eIDAS 2.0 Regulation: The updated version of the eIDAS (electronic Identification, Authentication and Trust Services) regulation that sets standards for electronic identification and trusted services within the European Union.

Self-Sovereign Identity (SSI): A decentralized identity model that enables individuals to have full control over their digital identity and personal data. SSI allows users to manage and share verifiable credentials without the need for intermediaries.

Verifiable Credentials (VC): Digital attestations that enable the issuance and verification of claims about a subject's identity, attributes, or qualifications.

Wallet: In the context of DidRoom, a software application or platform that allows users to manage their digital identities, store cryptographic keys, create and manage DIDs, and interact with blockchain networks and verifiable credentials.

Zero-Knowledge Proofs: Cryptographic methods that allow a party to prove knowledge of a certain value or statement without revealing the actual value itself. Zero-knowledge proofs enhance privacy and security by demonstrating knowledge without disclosing sensitive information.

W3C-DID: Abbreviation for "W3C Decentralized Identifier," a standard by the World Wide Web Consortium (W3C) for creating, managing, and resolving decentralized identifiers.

W3C-VC: Abbreviation for "W3C Verifiable Credentials," a standard by the World Wide Web Consortium (W3C) for creating and verifying digital credentials in a secure and interoperable manner.

Zenroom: A cryptographic virtual machine developed by Dyne.org Foundation, capable of performing various cryptographic operations and supporting blockchain interoperability.

Zenswarm: A blockchain oracle technology developed for blockchain interoperability and off-chain cryptography, utilizing Zenroom at its core.

',20),r=[o];function s(l,c,d,h,p,u){return n(),t("div",null,r)}const m=e(a,[["render",s]]);export{g as __pageData,m as default}; diff --git a/docs/pr-preview/pr-19/assets/guides_7_terms-and-conditions_privacy-policy.md.DXN0USW9.js b/docs/pr-preview/pr-19/assets/guides_7_terms-and-conditions_privacy-policy.md.DXN0USW9.js index da9aa68..a76f3a8 100644 --- a/docs/pr-preview/pr-19/assets/guides_7_terms-and-conditions_privacy-policy.md.DXN0USW9.js +++ b/docs/pr-preview/pr-19/assets/guides_7_terms-and-conditions_privacy-policy.md.DXN0USW9.js @@ -1 +1 @@ -import{_ as a,c as e,o,a3 as t}from"./chunks/framework.Dcugq_a2.js";const m=JSON.parse('{"title":"Privacy Policies","description":"","frontmatter":{},"headers":[],"relativePath":"guides/7_terms-and-conditions/privacy-policy.md","filePath":"guides/7_terms-and-conditions/privacy-policy.md","lastUpdated":1725017176000}'),r={name:"guides/7_terms-and-conditions/privacy-policy.md"},i=t('

Privacy Policies ​

Please read below the privacy policies the DIDroom Wallet, DIDroom Wallet, and the DIDroom Control Room (Dashboard).

πŸ“±DIDroom Wallet πŸ“± ​

Last Updated: [30.08.2024]

1. Introduction ​

This Privacy Policy explains how Forkbomb B.V. ("we", "our", "us") collects, uses, and protects your personal data when you use the DIDroom Wallet mobile app ("the Wallet"). By using the Wallet, you agree to the collection and use of information in accordance with this policy.

2. Data Collection ​

Personal Data ​

The DIDroom Wallet app collects the following types of personal data:

  • Names
  • Credential Data
  • Organization Information: The organization the user is part of on the DIDroom Control Room (Dashboard).

Device Information ​

The Wallet app does not collect any device-related information, such as device IDs or location data.

Collection Methods ​

Data is collected through:

  • User Input: Information provided directly by the user.
  • Device Sensors: Information gathered through device sensors.
  • Interaction: Interaction with DIDroom Control Room (Dashboard) and DIDroom microservices, operated by Forkbomb B.V. or third parties.

3. Data Processing ​

Purposes of Data Processing ​

The collected data is used for the following purposes:

  • Credential Request
  • Credential Storage
  • Credential Presentation
  • Authentication
  • Personalization

Processing Locations ​

The data is processed locally on the device. However, the credential signature is verified by an external microservice called Relying Party, which may be operated by third parties or Forkbomb B.V.

4. Data Storage and Security ​

Data Storage ​

  • Secret Keys and Credentials: Stored locally on the device.
  • Email and Organization Data: Stored on the DIDroom Control Room (Dashboard), which is hosted in the Cloud based in Europe.

Security Measures ​

We implement the following security measures to protect your data:

  • End-to-End Encryption
  • TLS (Transport Layer Security) Communication
  • Asymmetric Signatures

5. User Rights ​

User Rights ​

Users have the following rights regarding their data:

  • Access: The right to access the data we hold about you.
  • Correction: The right to correct any inaccuracies in your data.
  • Deletion: The right to request the deletion of your data.

Exercising Rights ​

You can exercise these rights through:

  • In-App Options
  • Contacting Support

6. International Data Transfers ​

Data Transfers ​

The DIDroom Wallet app does not directly involve international data transfers. Any such transfers are handled within the application.

7. Cookies and Tracking ​

Cookies and Tracking ​

The DIDroom Wallet app uses cookies and tracking technologies for analytics. When presenting a credential the Wallet sends data the Relying Party. The Relying Party transfers some data to the DIDroom Verifier via Firebase, if the DIDroom Verifier is used as a mobile app. Firebase is not used if the DIDroom Verifier is deployed as a web app.

8. Updates to the Privacy Policy ​

Notification of Changes ​

Users will be notified of any changes to this Privacy Policy via email.

9. Contact Information ​

For any questions or concerns about this Privacy Policy, please contact us at:

Forkbomb B.V.
Haparandadam 7-A1
1013AK Amsterdam
Netherlands
Email: info@forkbomb.eu

Industry Standards ​

The DIDroom Wallet adheres to GDPR and California privacy laws.


πŸ“² DIDroom Verifier πŸ“² ​

Last Updated: [30.08.2024]

1. Introduction ​

This Privacy Policy explains how Forkbomb B.V. ("we", "our", "us") collects, uses, and protects your personal data when you use the DIDroom Verifier mobile app ("the Verifier"). By using the Verifier, you agree to the collection and use of information in accordance with this policy.

2. Data Collection ​

Personal Data ​

The DIDroom Verifier app receives the following personal data during the credential verification process:

  • Claims: Information disclosed from a credential held in the DIDroom Wallet. The Holder of the DIDroom Wallet consents to disclose these claims. The Verifier does not store these claims; only a log of the verification process is maintained.

Collection Methods ​

Data is collected through:

  • QR Code Scans
  • Direct Data Transfer: If the Verifier is deployed as a web application.

Device Information ​

The Verifier app does not collect any device-related information, such as device IDs or location data.

3. Data Processing ​

Purposes of Data Processing ​

The received personal data is used solely for:

  • Verification of Credentials

Processing Locations ​

Data is processed locally on the device. However, credential signatures are verified by an external microservice called Relying Party, which may be operated by third parties or by Forkbomb B.V.

4. Data Storage and Security ​

Data Storage ​

  • Personal Data: No personal data is stored by the Verifier.
  • Operator Data: Personal data of the person operating the Verifier is stored by the DIDroom Control Room (Dashboard).

Security Measures ​

We implement the following security measures to protect data:

  • TLS (Transport Layer Security)
  • Cryptographic Asymmetric Signatures

5. User Rights ​

User Rights ​

Users have the following rights regarding their data:

  • Access: The right to access the data we hold about you.
  • Correction: The right to correct any inaccuracies in your data.
  • Deletion: The right to request the deletion of your data.

Exercising Rights ​

These rights can be exercised through:

  • DIDroom Control Room (Dashboard)
  • Contacting Support

6. International Data Transfers ​

Data Transfers ​

The DIDroom Verifier app may involve international data transfers, which are handled directly within the app.

7. Cookies and Tracking ​

Cookies and Tracking ​

The DIDroom Verifier app itself does not use cookies or tracking technologies. However, it connects to Firebase for messages, which may include data sent by the Relying Party and originally by the DIDroom Wallet.

8. Updates to the Privacy Policy ​

Notification of Changes ​

Users will be notified of any changes to this Privacy Policy via email.

9. Contact Information ​

For any questions or concerns about this Privacy Policy, please contact us at:

Forkbomb B.V.
Haparandadam 7-A1
1013AK Amsterdam
Netherlands
Email: info@forkbomb.eu

Industry Standards ​

The DIDroom Wallet adheres to GDPR and California privacy laws.


πŸ’» DIDroom Control Room (Dashboard) πŸ’» ​

Last Updated: [30.08.2024]

1. Introduction ​

This Privacy Policy explains how Forkbomb B.V. ("we", "our", "us") collects, uses, and protects your personal data when you use the DIDroom Control Room (Dashboard) ("the Dashboard"). By using the Dashboard, you agree to the collection and use of information in accordance with this policy.

2. Data Collection ​

Personal Data ​

The DIDroom Control Room (Dashboard) collects the following types of personal data:

  • Email Addresses
  • IP Addresses
  • Billing Information

Data Collection Methods ​

Data is collected through:

  • User Input: Information provided directly by the user.
  • Invitations: Users may invite others via email to join the Dashboard.

Third-Party Data Collection ​

The DIDroom Control Room (Dashboard) does not collect data from third parties.

3. Data Processing ​

Purposes of Data Processing ​

The collected data is used for the following purposes:

  • Account Creation
  • Personalization

Automated Decision-Making ​

The DIDroom Control Room (Dashboard) does not use data for automated decision-making or profiling.

Data Sharing ​

No data is shared with third parties.

4. Data Storage and Security ​

Data Storage Locations ​

Data is stored in cloud services based in Europe.

Data Retention ​

Data is retained until the user deletes their account.

Security Measures ​

We implement the following security measures to protect your data:

  • Encryption
  • Access Controls

5. User Rights ​

User Rights ​

Users have the following rights regarding their data:

  • Access: The right to access the data we hold about you.
  • Rectification: The right to correct any inaccuracies in your data.
  • Deletion: The right to request the deletion of your data.

Exercising Your Rights ​

You can exercise these rights through the Dashboard or by contacting our support team.

Identity Verification ​

Currently, there is no identity verification process, but we plan to implement KYC (Know Your Customer) in the future.

6. Cookies and Tracking ​

Cookies and Analytics ​

The DIDroom Control Room (Dashboard) uses cookies and tracking technologies for analytics. We use Matomo, which is deployed on an on-premises server.

Managing Cookies ​

Users can manage or opt out of cookies through the "no-follow" option in their browser settings.

7. International Data Transfers ​

Data Transfers ​

No user data is transferred internationally.

8. Minors ​

Age Restrictions ​

The DIDroom Control Room (Dashboard) is not intended for use by children due to its complexity.

We do not obtain parental consent for minors' data collection.

9. Updates to the Privacy Policy ​

Notification of Changes ​

Users will be notified of any changes to this Privacy Policy via email.

10. Contact Information ​

For any questions or concerns about this Privacy Policy, please contact us at:

Forkbomb B.V.
Haparandadam 7-A1
1013AK Amsterdam
Netherlands
Email: info@forkbomb.eu

Industry Standards ​

The DIDroom Control Room (Dashboard) adheres to GDPR and California privacy laws.

',156),n=[i];function s(l,h,c,d,u,g){return o(),e("div",null,n)}const f=a(r,[["render",s]]);export{m as __pageData,f as default}; +import{_ as a,c as e,o,a3 as t}from"./chunks/framework.Dcugq_a2.js";const m=JSON.parse('{"title":"Privacy Policies","description":"","frontmatter":{},"headers":[],"relativePath":"guides/7_terms-and-conditions/privacy-policy.md","filePath":"guides/7_terms-and-conditions/privacy-policy.md","lastUpdated":1725017176000}'),r={name:"guides/7_terms-and-conditions/privacy-policy.md"},i=t('

Privacy Policies ​

Please read below the privacy policies the DIDroom Wallet, DIDroom Wallet, and the DIDroom Dashboard (Dashboard).

πŸ“±DIDroom Wallet πŸ“± ​

Last Updated: [30.08.2024]

1. Introduction ​

This Privacy Policy explains how Forkbomb B.V. ("we", "our", "us") collects, uses, and protects your personal data when you use the DIDroom Wallet mobile app ("the Wallet"). By using the Wallet, you agree to the collection and use of information in accordance with this policy.

2. Data Collection ​

Personal Data ​

The DIDroom Wallet app collects the following types of personal data:

  • Names
  • Credential Data
  • Organization Information: The organization the user is part of on the DIDroom Dashboard (Dashboard).

Device Information ​

The Wallet app does not collect any device-related information, such as device IDs or location data.

Collection Methods ​

Data is collected through:

  • User Input: Information provided directly by the user.
  • Device Sensors: Information gathered through device sensors.
  • Interaction: Interaction with DIDroom Dashboard (Dashboard) and DIDroom microservices, operated by Forkbomb B.V. or third parties.

3. Data Processing ​

Purposes of Data Processing ​

The collected data is used for the following purposes:

  • Credential Request
  • Credential Storage
  • Credential Presentation
  • Authentication
  • Personalization

Processing Locations ​

The data is processed locally on the device. However, the credential signature is verified by an external microservice called Relying Party, which may be operated by third parties or Forkbomb B.V.

4. Data Storage and Security ​

Data Storage ​

  • Secret Keys and Credentials: Stored locally on the device.
  • Email and Organization Data: Stored on the DIDroom Dashboard (Dashboard), which is hosted in the Cloud based in Europe.

Security Measures ​

We implement the following security measures to protect your data:

  • End-to-End Encryption
  • TLS (Transport Layer Security) Communication
  • Asymmetric Signatures

5. User Rights ​

User Rights ​

Users have the following rights regarding their data:

  • Access: The right to access the data we hold about you.
  • Correction: The right to correct any inaccuracies in your data.
  • Deletion: The right to request the deletion of your data.

Exercising Rights ​

You can exercise these rights through:

  • In-App Options
  • Contacting Support

6. International Data Transfers ​

Data Transfers ​

The DIDroom Wallet app does not directly involve international data transfers. Any such transfers are handled within the application.

7. Cookies and Tracking ​

Cookies and Tracking ​

The DIDroom Wallet app uses cookies and tracking technologies for analytics. When presenting a credential the Wallet sends data the Relying Party. The Relying Party transfers some data to the DIDroom Verifier via Firebase, if the DIDroom Verifier is used as a mobile app. Firebase is not used if the DIDroom Verifier is deployed as a web app.

8. Updates to the Privacy Policy ​

Notification of Changes ​

Users will be notified of any changes to this Privacy Policy via email.

9. Contact Information ​

For any questions or concerns about this Privacy Policy, please contact us at:

Forkbomb B.V.
Haparandadam 7-A1
1013AK Amsterdam
Netherlands
Email: info@forkbomb.eu

Industry Standards ​

The DIDroom Wallet adheres to GDPR and California privacy laws.


πŸ“² DIDroom Verifier πŸ“² ​

Last Updated: [30.08.2024]

1. Introduction ​

This Privacy Policy explains how Forkbomb B.V. ("we", "our", "us") collects, uses, and protects your personal data when you use the DIDroom Verifier mobile app ("the Verifier"). By using the Verifier, you agree to the collection and use of information in accordance with this policy.

2. Data Collection ​

Personal Data ​

The DIDroom Verifier app receives the following personal data during the credential verification process:

  • Claims: Information disclosed from a credential held in the DIDroom Wallet. The Holder of the DIDroom Wallet consents to disclose these claims. The Verifier does not store these claims; only a log of the verification process is maintained.

Collection Methods ​

Data is collected through:

  • QR Code Scans
  • Direct Data Transfer: If the Verifier is deployed as a web application.

Device Information ​

The Verifier app does not collect any device-related information, such as device IDs or location data.

3. Data Processing ​

Purposes of Data Processing ​

The received personal data is used solely for:

  • Verification of Credentials

Processing Locations ​

Data is processed locally on the device. However, credential signatures are verified by an external microservice called Relying Party, which may be operated by third parties or by Forkbomb B.V.

4. Data Storage and Security ​

Data Storage ​

  • Personal Data: No personal data is stored by the Verifier.
  • Operator Data: Personal data of the person operating the Verifier is stored by the DIDroom Dashboard (Dashboard).

Security Measures ​

We implement the following security measures to protect data:

  • TLS (Transport Layer Security)
  • Cryptographic Asymmetric Signatures

5. User Rights ​

User Rights ​

Users have the following rights regarding their data:

  • Access: The right to access the data we hold about you.
  • Correction: The right to correct any inaccuracies in your data.
  • Deletion: The right to request the deletion of your data.

Exercising Rights ​

These rights can be exercised through:

  • DIDroom Dashboard (Dashboard)
  • Contacting Support

6. International Data Transfers ​

Data Transfers ​

The DIDroom Verifier app may involve international data transfers, which are handled directly within the app.

7. Cookies and Tracking ​

Cookies and Tracking ​

The DIDroom Verifier app itself does not use cookies or tracking technologies. However, it connects to Firebase for messages, which may include data sent by the Relying Party and originally by the DIDroom Wallet.

8. Updates to the Privacy Policy ​

Notification of Changes ​

Users will be notified of any changes to this Privacy Policy via email.

9. Contact Information ​

For any questions or concerns about this Privacy Policy, please contact us at:

Forkbomb B.V.
Haparandadam 7-A1
1013AK Amsterdam
Netherlands
Email: info@forkbomb.eu

Industry Standards ​

The DIDroom Wallet adheres to GDPR and California privacy laws.


πŸ’» DIDroom Dashboard (Dashboard) πŸ’» ​

Last Updated: [30.08.2024]

1. Introduction ​

This Privacy Policy explains how Forkbomb B.V. ("we", "our", "us") collects, uses, and protects your personal data when you use the DIDroom Dashboard (Dashboard) ("the Dashboard"). By using the Dashboard, you agree to the collection and use of information in accordance with this policy.

2. Data Collection ​

Personal Data ​

The DIDroom Dashboard (Dashboard) collects the following types of personal data:

  • Email Addresses
  • IP Addresses
  • Billing Information

Data Collection Methods ​

Data is collected through:

  • User Input: Information provided directly by the user.
  • Invitations: Users may invite others via email to join the Dashboard.

Third-Party Data Collection ​

The DIDroom Dashboard (Dashboard) does not collect data from third parties.

3. Data Processing ​

Purposes of Data Processing ​

The collected data is used for the following purposes:

  • Account Creation
  • Personalization

Automated Decision-Making ​

The DIDroom Dashboard (Dashboard) does not use data for automated decision-making or profiling.

Data Sharing ​

No data is shared with third parties.

4. Data Storage and Security ​

Data Storage Locations ​

Data is stored in cloud services based in Europe.

Data Retention ​

Data is retained until the user deletes their account.

Security Measures ​

We implement the following security measures to protect your data:

  • Encryption
  • Access Controls

5. User Rights ​

User Rights ​

Users have the following rights regarding their data:

  • Access: The right to access the data we hold about you.
  • Rectification: The right to correct any inaccuracies in your data.
  • Deletion: The right to request the deletion of your data.

Exercising Your Rights ​

You can exercise these rights through the Dashboard or by contacting our support team.

Identity Verification ​

Currently, there is no identity verification process, but we plan to implement KYC (Know Your Customer) in the future.

6. Cookies and Tracking ​

Cookies and Analytics ​

The DIDroom Dashboard (Dashboard) uses cookies and tracking technologies for analytics. We use Matomo, which is deployed on an on-premises server.

Managing Cookies ​

Users can manage or opt out of cookies through the "no-follow" option in their browser settings.

7. International Data Transfers ​

Data Transfers ​

No user data is transferred internationally.

8. Minors ​

Age Restrictions ​

The DIDroom Dashboard (Dashboard) is not intended for use by children due to its complexity.

We do not obtain parental consent for minors' data collection.

9. Updates to the Privacy Policy ​

Notification of Changes ​

Users will be notified of any changes to this Privacy Policy via email.

10. Contact Information ​

For any questions or concerns about this Privacy Policy, please contact us at:

Forkbomb B.V.
Haparandadam 7-A1
1013AK Amsterdam
Netherlands
Email: info@forkbomb.eu

Industry Standards ​

The DIDroom Dashboard (Dashboard) adheres to GDPR and California privacy laws.

',156),n=[i];function s(l,h,c,d,u,g){return o(),e("div",null,n)}const f=a(r,[["render",s]]);export{m as __pageData,f as default}; diff --git a/docs/pr-preview/pr-19/assets/guides_9_pricing_index.md.bavMY-0B.js b/docs/pr-preview/pr-19/assets/guides_9_pricing_index.md.bavMY-0B.js index 3a5b124..10fada3 100644 --- a/docs/pr-preview/pr-19/assets/guides_9_pricing_index.md.bavMY-0B.js +++ b/docs/pr-preview/pr-19/assets/guides_9_pricing_index.md.bavMY-0B.js @@ -1 +1 @@ -import{_ as e,c as t,o as r,a3 as a}from"./chunks/framework.Dcugq_a2.js";const f=JSON.parse('{"title":"πŸ«±πŸ½β€πŸ«²πŸΏ Pricing πŸ«±πŸΎβ€πŸ«²πŸΌ","description":"","frontmatter":{},"headers":[],"relativePath":"guides/9_pricing/index.md","filePath":"guides/9_pricing/index.md","lastUpdated":1723728835000}'),i={name:"guides/9_pricing/index.md"},o=a('

πŸ«±πŸ½β€πŸ«²πŸΏ Pricing πŸ«±πŸΎβ€πŸ«²πŸΌ ​

Pricing Tables ​

Our pricing table. For a quick description of the different items, see below.

FreeProEnterprise
Organizations11Unlimited
Issuance flows15Unlimited
Verification flows15Unlimited
Public credentialsNoNoYes
Microservices DeploymentManualManual, AutoManual, Auto, CI
Control RoomSaaSSaaSSaaS, on premises
Admin DashboardNoNoOn premises
Credential customization SupportNoGithubTraining, Support, Customization
White labelingNoNoYes
W3C-DID serviceSaaSSaaSSaaS, on premises, customizable
PriceFree!99 €/monthCall Sales

Feature description ​

Below a description of the individual features.

Organizations ​

  • Description: an Organization contains users, Credential Issuance and Verification, and Microservices setup.
  • Info: create Organization

Issuance flows and Verification flows ​

  • Description: Credential Issuance and Verification flows define what a Credential contains, how it is issued and how it is verified. Issuance and Verification are operated by Microservices.
  • Info: Create an Issuance Flow and Create a Verification Flow

Microservices Deployment ​

  • Description: Microservices operate Credential Issuance and Verification. The Wallet and Verifier apps exchange information with the Microservices.
  • Info: Deploy Microservices

Control Room ​

  • Description: the DIDroom Control Room is the main web application to setup Organizations, users, Credential Issuance and Verification Flows and Microservices.
  • Info: DIDroom Control Room

Admin Dashboard ​

Public credentials ​

  • Description: this feature allows you to have your credential Issuance flow visible by anyone who installs the DIDroom Wallet and Verifier app. The Wallet users can request the credentials by clicking on the credential from the Wallet's home.

Credential customization Support ​

  • Description: the Credential Authorization, Issuance and Verification, can be customised, for example to read the credential's data from an external database or to perform Authorization on a 3rd party service. Customization is implemented on our Online IDE Apiroom using Zenroom and Slangroom.
  • Info: we offer custom development and training for the customization

White labeling ​

W3C-DID service ​

  • Description: DIDroom uses Dyne.org's W3C-DID implementation and service.
  • Info: we offer support for deployment and custom development of W3C-DID services.
',24),n=[o];function s(l,d,c,h,u,p){return r(),t("div",null,n)}const b=e(i,[["render",s]]);export{f as __pageData,b as default}; +import{_ as e,c as t,o as r,a3 as a}from"./chunks/framework.Dcugq_a2.js";const f=JSON.parse('{"title":"πŸ«±πŸ½β€πŸ«²πŸΏ Pricing πŸ«±πŸΎβ€πŸ«²πŸΌ","description":"","frontmatter":{},"headers":[],"relativePath":"guides/9_pricing/index.md","filePath":"guides/9_pricing/index.md","lastUpdated":1723728835000}'),i={name:"guides/9_pricing/index.md"},o=a('

πŸ«±πŸ½β€πŸ«²πŸΏ Pricing πŸ«±πŸΎβ€πŸ«²πŸΌ ​

Pricing Tables ​

Our pricing table. For a quick description of the different items, see below.

FreeProEnterprise
Organizations11Unlimited
Issuance flows15Unlimited
Verification flows15Unlimited
Public credentialsNoNoYes
Microservices DeploymentManualManual, AutoManual, Auto, CI
Control RoomSaaSSaaSSaaS, on premises
Admin DashboardNoNoOn premises
Credential customization SupportNoGithubTraining, Support, Customization
White labelingNoNoYes
W3C-DID serviceSaaSSaaSSaaS, on premises, customizable
PriceFree!99 €/monthCall Sales

Feature description ​

Below a description of the individual features.

Organizations ​

  • Description: an Organization contains users, Credential Issuance and Verification, and Microservices setup.
  • Info: create Organization

Issuance flows and Verification flows ​

  • Description: Credential Issuance and Verification flows define what a Credential contains, how it is issued and how it is verified. Issuance and Verification are operated by Microservices.
  • Info: Create an Issuance Flow and Create a Verification Flow

Microservices Deployment ​

  • Description: Microservices operate Credential Issuance and Verification. The Wallet and Verifier apps exchange information with the Microservices.
  • Info: Deploy Microservices

Control Room ​

  • Description: the DIDroom Dashboard is the main web application to setup Organizations, users, Credential Issuance and Verification Flows and Microservices.
  • Info: DIDroom Dashboard

Admin Dashboard ​

Public credentials ​

  • Description: this feature allows you to have your credential Issuance flow visible by anyone who installs the DIDroom Wallet and Verifier app. The Wallet users can request the credentials by clicking on the credential from the Wallet's home.

Credential customization Support ​

  • Description: the Credential Authorization, Issuance and Verification, can be customised, for example to read the credential's data from an external database or to perform Authorization on a 3rd party service. Customization is implemented on our Online IDE Apiroom using Zenroom and Slangroom.
  • Info: we offer custom development and training for the customization

White labeling ​

W3C-DID service ​

  • Description: DIDroom uses Dyne.org's W3C-DID implementation and service.
  • Info: we offer support for deployment and custom development of W3C-DID services.
',24),n=[o];function s(l,d,c,h,u,p){return r(),t("div",null,n)}const b=e(i,[["render",s]]);export{f as __pageData,b as default}; diff --git a/docs/pr-preview/pr-19/assets/intro.md.DpMEAA1Q.js b/docs/pr-preview/pr-19/assets/intro.md.DpMEAA1Q.js index 0ee2fb5..6c26300 100644 --- a/docs/pr-preview/pr-19/assets/intro.md.DpMEAA1Q.js +++ b/docs/pr-preview/pr-19/assets/intro.md.DpMEAA1Q.js @@ -1 +1 @@ -import{_ as e}from"./chunks/DIDroom-V3-setto.DziAJTNZ.js";import{_ as i,c as t,o,a3 as r}from"./chunks/framework.Dcugq_a2.js";const y=JSON.parse('{"title":"πŸ“– Introduction","description":"","frontmatter":{},"headers":[],"relativePath":"intro.md","filePath":"intro.md","lastUpdated":1717944697000}'),a={name:"intro.md"},n=r('

πŸ“– Introduction ​

Welcome to Didroom – your gateway to decentralized identity management and secure communication. Didroom empowers individuals and organizations to take control of their digital identities while ensuring privacy and security. Whether you're looking to streamline identity verification processes, enhance data security, or enable secure communication channels, Didroom provides the tools and infrastructure you need.

You can quickly test, plug and deploy by using our service at dashboard.didroom.com or install the whole ecosystem on-premise on your infrastructure. For detailed instructions please refer to the Get started guide.

Watch our intro video ​

How It Works ​

Didroom offers a seamless and intuitive experience for managing decentralized identities and secure communication. Here's how it works:

  • Define services and credentials: Via the Didroom Control Room, users can define services, credentials, and claims services according to their specific requirements.

  • Generate Openid4VCI microservices: Users can generate Openid4VCI microservices directly from the bloom using the Control Room, simplifying the process of creating and deploying identity verification services.

  • Plug custom business logic: Didroom allows users to add custom business logic to their applications, tailoring the functionality to meet their unique needs and requirements.

  • Integrate pre-existing microservices: Users can seamlessly integrate their microservices into their existing systems or applications, enhancing functionality and interoperability.

  • Deploy and control microservices nodes: Didroom enables users to deploy and control microservices nodes directly from the Control Room, streamlining the deployment and management process.

  • Enhance your business logic with natural language smart contracts (Zencode): With Didroom, users can enhance their business logic with natural English smart contracts, enabling advanced automation and decision-making capabilities.

  • Whitelabel wallet and verifier apps: To interact with your services individuals need a wallet app that we provide for whitelabeling. Same a verifier app for indivisuals that want to verify credentials.

Features ​

  • Compliance: Didroom is compliant with industry standards and regulations, including EUDI-ARF, ensuring adherence to data protection laws and regulations.
  • End-to-End encryption: Secure communication is facilitated through end-to-end encryption, ensuring that messages and data remain private and confidential.
  • Decentralized identity management: Didroom enables users to create, control, and manage their digital identities in a decentralized manner, eliminating reliance on central authorities.
  • Customizable and extensible: Didroom is highly customizable and extensible, allowing organizations to tailor the platform to their specific needs and integrate with existing systems seamlessly.

Integration and flexibility ​

Didroom is designed to be seamlessly integrated into third-party solutions and environments. Its modular architecture allows for easy integration with existing microservices or other identity management systems. Whether you need to use Didroom as a standalone solution or integrate it into your existing infrastructure, Didroom provides the flexibility and adaptability you need.

Architectural overview ​

The Didroom ecosystem consists of a modular architecture comprising core technologies and components

  1. Zenroom
  2. Slangroom
  3. No-code-room
  4. Dyne.org Decentralized Identifiers (DID) Service

these provide the foundational elements for identity management and cryptographic operations.

  • Components:

πŸ“‘

For detailed description of each component please refer to πŸ’‘ The Solution

  1. Didroom Control Room / Dashboard
  2. Didroom Microservices
  3. Wallet Holder App
  4. Verifier App

there offer user interfaces and functionalities for managing identities, communication, and verification.

Let's start! ​

Sure, let's 🏁 Get started!

',23),s=[n];function l(c,d,h,u,m,p){return o(),t("div",null,s)}const v=i(a,[["render",l]]);export{y as __pageData,v as default}; +import{_ as e}from"./chunks/DIDroom-V3-setto.DziAJTNZ.js";import{_ as i,c as t,o,a3 as r}from"./chunks/framework.Dcugq_a2.js";const y=JSON.parse('{"title":"πŸ“– Introduction","description":"","frontmatter":{},"headers":[],"relativePath":"intro.md","filePath":"intro.md","lastUpdated":1717944697000}'),a={name:"intro.md"},n=r('

πŸ“– Introduction ​

Welcome to Didroom – your gateway to decentralized identity management and secure communication. Didroom empowers individuals and organizations to take control of their digital identities while ensuring privacy and security. Whether you're looking to streamline identity verification processes, enhance data security, or enable secure communication channels, Didroom provides the tools and infrastructure you need.

You can quickly test, plug and deploy by using our service at dashboard.didroom.com or install the whole ecosystem on-premise on your infrastructure. For detailed instructions please refer to the Get started guide.

Watch our intro video ​

How It Works ​

Didroom offers a seamless and intuitive experience for managing decentralized identities and secure communication. Here's how it works:

  • Define services and credentials: Via the DIDroom Dashboard, users can define services, credentials, and claims services according to their specific requirements.

  • Generate Openid4VCI microservices: Users can generate Openid4VCI microservices directly from the bloom using the Control Room, simplifying the process of creating and deploying identity verification services.

  • Plug custom business logic: Didroom allows users to add custom business logic to their applications, tailoring the functionality to meet their unique needs and requirements.

  • Integrate pre-existing microservices: Users can seamlessly integrate their microservices into their existing systems or applications, enhancing functionality and interoperability.

  • Deploy and control microservices nodes: Didroom enables users to deploy and control microservices nodes directly from the Control Room, streamlining the deployment and management process.

  • Enhance your business logic with natural language smart contracts (Zencode): With Didroom, users can enhance their business logic with natural English smart contracts, enabling advanced automation and decision-making capabilities.

  • Whitelabel wallet and verifier apps: To interact with your services individuals need a wallet app that we provide for whitelabeling. Same a verifier app for indivisuals that want to verify credentials.

Features ​

  • Compliance: Didroom is compliant with industry standards and regulations, including EUDI-ARF, ensuring adherence to data protection laws and regulations.
  • End-to-End encryption: Secure communication is facilitated through end-to-end encryption, ensuring that messages and data remain private and confidential.
  • Decentralized identity management: Didroom enables users to create, control, and manage their digital identities in a decentralized manner, eliminating reliance on central authorities.
  • Customizable and extensible: Didroom is highly customizable and extensible, allowing organizations to tailor the platform to their specific needs and integrate with existing systems seamlessly.

Integration and flexibility ​

Didroom is designed to be seamlessly integrated into third-party solutions and environments. Its modular architecture allows for easy integration with existing microservices or other identity management systems. Whether you need to use Didroom as a standalone solution or integrate it into your existing infrastructure, Didroom provides the flexibility and adaptability you need.

Architectural overview ​

The Didroom ecosystem consists of a modular architecture comprising core technologies and components

  1. Zenroom
  2. Slangroom
  3. No-code-room
  4. Dyne.org Decentralized Identifiers (DID) Service

these provide the foundational elements for identity management and cryptographic operations.

  • Components:

πŸ“‘

For detailed description of each component please refer to πŸ’‘ The Solution

  1. DIDroom Dashboard / Dashboard
  2. Didroom Microservices
  3. Wallet Holder App
  4. Verifier App

there offer user interfaces and functionalities for managing identities, communication, and verification.

Let's start! ​

Sure, let's 🏁 Get started!

',23),s=[n];function l(c,d,h,u,m,p){return o(),t("div",null,s)}const v=i(a,[["render",l]]);export{y as __pageData,v as default}; diff --git a/docs/pr-preview/pr-19/assets/solution.md.DRKRW4FG.js b/docs/pr-preview/pr-19/assets/solution.md.DRKRW4FG.js index 575eb78..228d870 100644 --- a/docs/pr-preview/pr-19/assets/solution.md.DRKRW4FG.js +++ b/docs/pr-preview/pr-19/assets/solution.md.DRKRW4FG.js @@ -1 +1 @@ -import{_ as e,c as o,o as t,a3 as i}from"./chunks/framework.Dcugq_a2.js";const b=JSON.parse('{"title":"πŸ’‘ The Solution","description":"","frontmatter":{},"headers":[],"relativePath":"solution.md","filePath":"solution.md","lastUpdated":1713910977000}'),r={name:"solution.md"},a=i('

πŸ’‘ The Solution ​

Our solution is divided into different repositories, each focusing on a specific component. This modular approach allows us to maintain flexibility and scalability, enabling users to customize and integrate the solution according to their specific needs and requirements.

DIDroom Control Room (Dashboard) ​

The DIDroom Control Room/Dashboard serves as the central hub for managing decentralized identity solutions. It provides a user-friendly interface for configuring settings, monitoring performance, and accessing key functionalities.

The core features of the Control Room are:

  • Creation of credential issuance and verification flows
  • Deployment and provisioning of the DIDroom Microservices
  • Creation of organizations, assigning of privileges to different users
  • The admin panel of the Control Room offers:
    • User management
    • Setup of web-hooks and automation flows
    • Customization of the Control Room menu entries

DIDroom Mobile libs (Mobile Zencode) ​

A collection of mobile library, Zencode Mobile holds all the business logic and contracts shared between the different components of the DIDroom Solution. It serves as a centralized repository for managing and updating the core business logic used across various mobile applications and components.

RESOURCES

GitHub

DIDroom microservices ​

Those are the technological core of the solution: those components offer cryptographic functions as well as transport protocols. The microservices are completely isolated from the Dashboard, meaning that:

  • The code is hosted in a separated repo
  • The microservices can run independently from the Dashboard
  • Each microservice has its own secret keys and DID to identify them: those are generated by the microservice at its first provisioning

DIDroom microservices are generated using No-code-room (NCR) and utilize the Zencode Mobile repository to create three different microservices:

  • Credential Issuers: These microservices are compliant with Openid4VCI standards and handle the issuance of credentials.
  • Authorization Servers: These microservices implement OAuth2 and work seamlessly with our DID Service for authentication and authorization.
  • Relying Party: These microservices are compliant with Openid4VP standards and act as relying parties for authentication and authorization.

RESOURCES

GitHub

Wallet Holder App ​

The Wallet Holder App offers a secure and user-friendly interface for managing decentralized identities and digital credentials. It allows users to store, view, and share their identity information with ease inside a TEE (Trusted execution environment) directly on citizens devices.

Verifier App ​

The Verifier App provides tools for verifying the authenticity and validity of decentralized identities and digital credentials. It enables organizations to validate identity claims and ensure compliance with regulatory requirements.

DIDroom web components ​

DIDroom Web Components hold all the UI web components used across all the projects to ensure a coherent Atomic design and allow for white-labeling.

',25),s=[a];function n(l,c,d,h,m,p){return t(),o("div",null,s)}const f=e(r,[["render",n]]);export{b as __pageData,f as default}; +import{_ as e,c as o,o as t,a3 as i}from"./chunks/framework.Dcugq_a2.js";const b=JSON.parse('{"title":"πŸ’‘ The Solution","description":"","frontmatter":{},"headers":[],"relativePath":"solution.md","filePath":"solution.md","lastUpdated":1713910977000}'),r={name:"solution.md"},a=i('

πŸ’‘ The Solution ​

Our solution is divided into different repositories, each focusing on a specific component. This modular approach allows us to maintain flexibility and scalability, enabling users to customize and integrate the solution according to their specific needs and requirements.

DIDroom Dashboard (Dashboard) ​

The DIDroom Dashboard/Dashboard serves as the central hub for managing decentralized identity solutions. It provides a user-friendly interface for configuring settings, monitoring performance, and accessing key functionalities.

The core features of the Control Room are:

  • Creation of credential issuance and verification flows
  • Deployment and provisioning of the DIDroom Microservices
  • Creation of organizations, assigning of privileges to different users
  • The admin panel of the Control Room offers:
    • User management
    • Setup of web-hooks and automation flows
    • Customization of the Control Room menu entries

DIDroom Mobile libs (Mobile Zencode) ​

A collection of mobile library, Zencode Mobile holds all the business logic and contracts shared between the different components of the DIDroom Solution. It serves as a centralized repository for managing and updating the core business logic used across various mobile applications and components.

RESOURCES

GitHub

DIDroom microservices ​

Those are the technological core of the solution: those components offer cryptographic functions as well as transport protocols. The microservices are completely isolated from the Dashboard, meaning that:

  • The code is hosted in a separated repo
  • The microservices can run independently from the Dashboard
  • Each microservice has its own secret keys and DID to identify them: those are generated by the microservice at its first provisioning

DIDroom microservices are generated using No-code-room (NCR) and utilize the Zencode Mobile repository to create three different microservices:

  • Credential Issuers: These microservices are compliant with Openid4VCI standards and handle the issuance of credentials.
  • Authorization Servers: These microservices implement OAuth2 and work seamlessly with our DID Service for authentication and authorization.
  • Relying Party: These microservices are compliant with Openid4VP standards and act as relying parties for authentication and authorization.

RESOURCES

GitHub

Wallet Holder App ​

The Wallet Holder App offers a secure and user-friendly interface for managing decentralized identities and digital credentials. It allows users to store, view, and share their identity information with ease inside a TEE (Trusted execution environment) directly on citizens devices.

Verifier App ​

The Verifier App provides tools for verifying the authenticity and validity of decentralized identities and digital credentials. It enables organizations to validate identity claims and ensure compliance with regulatory requirements.

DIDroom web components ​

DIDroom Web Components hold all the UI web components used across all the projects to ensure a coherent Atomic design and allow for white-labeling.

',25),s=[a];function n(l,c,d,h,m,p){return t(),o("div",null,s)}const f=e(r,[["render",n]]);export{b as __pageData,f as default}; diff --git a/docs/pr-preview/pr-19/core-technologies.html b/docs/pr-preview/pr-19/core-technologies.html index 9d07b4e..dd874e9 100644 --- a/docs/pr-preview/pr-19/core-technologies.html +++ b/docs/pr-preview/pr-19/core-technologies.html @@ -18,7 +18,7 @@ -
Skip to content

πŸ—οΈ Core Technologies ​

πŸ” Zenroom ​

Zenroom is responsible for all underlying cryptographic operations within the Didroom ecosystem. It provides a secure execution environment for cryptographic operations and smart contracts, ensuring privacy, security, and integrity in digital interactions. Notably, Zenroom runs isomorphically on the web, mobile, and servers across various platforms in a deterministic way.

πŸ“œ Slangroom ​

Slangroom enhances the Zencode language of Zenroom by allowing the addition of plugins. These plugins extend the functionality of Zencode by enabling actions that do not necessarily need to be performed within virtual machines. Slangroom's approach is super standard, making it easy to add custom functionalities within the Zencode natural language. Additionally, Slangroom is capable of running over web pages using WebAssembly.

πŸ› οΈ No-code-room (NCR) ​

No-code-room is a Single Executable Application (SEA) for Linux. It takes a filesystem with .zen (Zencode/Slangroom) contracts and creates API microservices using live-directory routing. NCR seamlessly generates REST services that are auto-documented with OpenAPI. Additionally, it creates small graphic interfaces on the fly, referred to as applets.

RESOURCES

GitHub

πŸ”— Dyne.org Decentralized Identifiers (DID) Service ​

In 2022, Dyne.org implemented a W3C-DID method approved by the W3C governing board and included in the official DID method list. The DID service supports federation and provides tools for the creation, resolution, and management of decentralized identifiers (DIDs). It includes support for ECDSA, EDDSA, Schnorr, Ethereum address, as well as a Dilithium quantum-proof public key.

+
Skip to content

πŸ—οΈ Core Technologies ​

πŸ” Zenroom ​

Zenroom is responsible for all underlying cryptographic operations within the Didroom ecosystem. It provides a secure execution environment for cryptographic operations and smart contracts, ensuring privacy, security, and integrity in digital interactions. Notably, Zenroom runs isomorphically on the web, mobile, and servers across various platforms in a deterministic way.

πŸ“œ Slangroom ​

Slangroom enhances the Zencode language of Zenroom by allowing the addition of plugins. These plugins extend the functionality of Zencode by enabling actions that do not necessarily need to be performed within virtual machines. Slangroom's approach is super standard, making it easy to add custom functionalities within the Zencode natural language. Additionally, Slangroom is capable of running over web pages using WebAssembly.

πŸ› οΈ No-code-room (NCR) ​

No-code-room is a Single Executable Application (SEA) for Linux. It takes a filesystem with .zen (Zencode/Slangroom) contracts and creates API microservices using live-directory routing. NCR seamlessly generates REST services that are auto-documented with OpenAPI. Additionally, it creates small graphic interfaces on the fly, referred to as applets.

RESOURCES

GitHub

πŸ”— Dyne.org Decentralized Identifiers (DID) Service ​

In 2022, Dyne.org implemented a W3C-DID method approved by the W3C governing board and included in the official DID method list. The DID service supports federation and provides tools for the creation, resolution, and management of decentralized identifiers (DIDs). It includes support for ECDSA, EDDSA, Schnorr, Ethereum address, as well as a Dilithium quantum-proof public key.

diff --git a/docs/pr-preview/pr-19/get_started.html b/docs/pr-preview/pr-19/get_started.html index 1114d45..930f21b 100644 --- a/docs/pr-preview/pr-19/get_started.html +++ b/docs/pr-preview/pr-19/get_started.html @@ -19,7 +19,7 @@ -
Skip to content

🏁 Get started ​

Welcome to the Didroom Get Started guide! πŸš€ We're thrilled to have you embark on this journey with us. Whether you're a seasoned system administrator, a savvy organization administrator, an enthusiastic wallet holder, or a meticulous verifier, this section is tailor-made to provide you with comprehensive, step-by-step instructions crafted specifically for your role within the Didroom ecosystem.

πŸ’œ

We assume you're already familiar with Didroom's solution, its components and how they works.

If it's not the case, please refer to the introductory section for an overview.

Watch our intro video ​

Below, you'll find detailed descriptions of each guide, carefully curated to empower you with the knowledge and tools you need to navigate the world of decentralized identity management πŸ”


Quick Intro ​

System administrators

For folks that wants to deploy and manage the infrastructure that powers Didroom.

Organization administrators

For folks that wants to oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities.

Wallet holders

For individuals that wants to use the Wallet Holder App to manage their decentralized identities and digital credentials securely. Here we walks you through the process of installing and using the Wallet Holder App to store, view, and share identity information with ease.

Verifiers

For individuals that wants to utilize the Verifier App to verify the authenticity and validity of decentralized identities and digital credentials. Here we outlines how to install and use the Verifier App to validate identity claims and ensure compliance with regulatory requirements.

+
Skip to content

🏁 Get started ​

Welcome to the Didroom Get Started guide! πŸš€ We're thrilled to have you embark on this journey with us. Whether you're a seasoned system administrator, a savvy organization administrator, an enthusiastic wallet holder, or a meticulous verifier, this section is tailor-made to provide you with comprehensive, step-by-step instructions crafted specifically for your role within the Didroom ecosystem.

πŸ’œ

We assume you're already familiar with Didroom's solution, its components and how they works.

If it's not the case, please refer to the introductory section for an overview.

Watch our intro video ​

Below, you'll find detailed descriptions of each guide, carefully curated to empower you with the knowledge and tools you need to navigate the world of decentralized identity management πŸ”


Quick Intro ​

System administrators

For folks that wants to deploy and manage the infrastructure that powers Didroom.

Organization administrators

For folks that wants to oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities.

Wallet holders

For individuals that wants to use the Wallet Holder App to manage their decentralized identities and digital credentials securely. Here we walks you through the process of installing and using the Wallet Holder App to store, view, and share identity information with ease.

Verifiers

For individuals that wants to utilize the Verifier App to verify the authenticity and validity of decentralized identities and digital credentials. Here we outlines how to install and use the Verifier App to validate identity claims and ensure compliance with regulatory requirements.

diff --git a/docs/pr-preview/pr-19/guides/1_orgadmin/auth_server.html b/docs/pr-preview/pr-19/guides/1_orgadmin/auth_server.html index 245f088..d215f1c 100644 --- a/docs/pr-preview/pr-19/guides/1_orgadmin/auth_server.html +++ b/docs/pr-preview/pr-19/guides/1_orgadmin/auth_server.html @@ -18,7 +18,7 @@ - + diff --git a/docs/pr-preview/pr-19/guides/1_orgadmin/create.html b/docs/pr-preview/pr-19/guides/1_orgadmin/create.html index 20fe6f7..1fb728c 100644 --- a/docs/pr-preview/pr-19/guides/1_orgadmin/create.html +++ b/docs/pr-preview/pr-19/guides/1_orgadmin/create.html @@ -18,7 +18,7 @@ - + diff --git a/docs/pr-preview/pr-19/guides/1_orgadmin/credential_issuer.html b/docs/pr-preview/pr-19/guides/1_orgadmin/credential_issuer.html index aebadde..20768a8 100644 --- a/docs/pr-preview/pr-19/guides/1_orgadmin/credential_issuer.html +++ b/docs/pr-preview/pr-19/guides/1_orgadmin/credential_issuer.html @@ -18,7 +18,7 @@ - + diff --git a/docs/pr-preview/pr-19/guides/1_orgadmin/index.html b/docs/pr-preview/pr-19/guides/1_orgadmin/index.html index cf7c622..1ff1628 100644 --- a/docs/pr-preview/pr-19/guides/1_orgadmin/index.html +++ b/docs/pr-preview/pr-19/guides/1_orgadmin/index.html @@ -3,7 +3,7 @@ - πŸ‘©β€βš–οΈ DIDroom Control Room | + πŸ‘©β€βš–οΈ DIDroom Dashboard | @@ -18,7 +18,7 @@ -
Skip to content

πŸ‘©β€βš–οΈ DIDroom Control Room ​

Welcome, System Administrator! This guide provides step-by-step instructions for oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities.

Create an organization ​

Setup a credential issuer metadata ​

Setup an authorization server metadata ​

Create a fully working credential issuing flow ​

+
Skip to content

πŸ‘©β€βš–οΈ DIDroom Dashboard ​

Welcome, System Administrator! This guide provides step-by-step instructions for oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities.

Create an organization ​

Setup a credential issuer metadata ​

Setup an authorization server metadata ​

Create a fully working credential issuing flow ​

diff --git a/docs/pr-preview/pr-19/guides/1_orgadmin/issuance_flow.html b/docs/pr-preview/pr-19/guides/1_orgadmin/issuance_flow.html index bda1ecb..fda6819 100644 --- a/docs/pr-preview/pr-19/guides/1_orgadmin/issuance_flow.html +++ b/docs/pr-preview/pr-19/guides/1_orgadmin/issuance_flow.html @@ -18,7 +18,7 @@ - + diff --git a/docs/pr-preview/pr-19/guides/1_orgadmin/support.html b/docs/pr-preview/pr-19/guides/1_orgadmin/support.html index 9776fdf..07aa361 100644 --- a/docs/pr-preview/pr-19/guides/1_orgadmin/support.html +++ b/docs/pr-preview/pr-19/guides/1_orgadmin/support.html @@ -18,7 +18,7 @@ -
Skip to content

Support ​

We offer:

+
Skip to content

Support ​

We offer:

diff --git a/docs/pr-preview/pr-19/guides/2_wallet/1_register.html b/docs/pr-preview/pr-19/guides/2_wallet/1_register.html index 975021f..73d188f 100644 --- a/docs/pr-preview/pr-19/guides/2_wallet/1_register.html +++ b/docs/pr-preview/pr-19/guides/2_wallet/1_register.html @@ -18,7 +18,7 @@ -
Skip to content

Create a user account (or login) ​

You can create an account in the Wallet, or you can login using an account that previously registered on the DIDroom Control Room. In both cases you'll need to generate your secret keys, using Keypairoom

+
Skip to content

Create a user account (or login) ​

You can create an account in the Wallet, or you can login using an account that previously registered on the DIDroom Dashboard. In both cases you'll need to generate your secret keys, using Keypairoom

diff --git a/docs/pr-preview/pr-19/guides/2_wallet/2_join_org.html b/docs/pr-preview/pr-19/guides/2_wallet/2_join_org.html index 67d3e43..140252a 100644 --- a/docs/pr-preview/pr-19/guides/2_wallet/2_join_org.html +++ b/docs/pr-preview/pr-19/guides/2_wallet/2_join_org.html @@ -18,7 +18,7 @@ -
Skip to content

Join organization ​

Ideally you'd want to join an organization after you created an account on the wallet. Managing users in organization is happening in the DIDroom Control Room, there are multiple ways to do that:

  • You can request to join an organization from My organizations > Join an organization
  • As organization manager you can invite a user to join, from the organization page, go to Members > Add member

Member of an organization ​

Once you have joined an organization you will see in your Wallet's home page, the list of the credentials that the organization is offering. Meaning that you can click on the credential's card to request it.

+
Skip to content

Join organization ​

Ideally you'd want to join an organization after you created an account on the wallet. Managing users in organization is happening in the DIDroom Dashboard, there are multiple ways to do that:

  • You can request to join an organization from My organizations > Join an organization
  • As organization manager you can invite a user to join, from the organization page, go to Members > Add member

Member of an organization ​

Once you have joined an organization you will see in your Wallet's home page, the list of the credentials that the organization is offering. Meaning that you can click on the credential's card to request it.

diff --git a/docs/pr-preview/pr-19/guides/2_wallet/3_get_credential.html b/docs/pr-preview/pr-19/guides/2_wallet/3_get_credential.html index 28620a4..1600c49 100644 --- a/docs/pr-preview/pr-19/guides/2_wallet/3_get_credential.html +++ b/docs/pr-preview/pr-19/guides/2_wallet/3_get_credential.html @@ -18,7 +18,7 @@ -
Skip to content

Request a credential ​

A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer.

After you have created an account and logged in, you can request a credential in multiple ways:

  • From the Wallet's home page: you can request all the credentials that have been created as "public" in the DIDroom Control Room.
  • By scanning a QR-Code: you can re-quest a credential. The Wallet is compatible with the OpenID4VCI standard, so you should be able to request (and receive) credentials also from Credential Issuers which are setup or connected to DIDroom.

Your credentials ​

You can browse the credentials you received in the Wallet page of the Wallet (D'Oh!), they will be listed as cards and show you the issuer that produced them, their expiry and descriptions.

+
Skip to content

Request a credential ​

A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer.

After you have created an account and logged in, you can request a credential in multiple ways:

  • From the Wallet's home page: you can request all the credentials that have been created as "public" in the DIDroom Dashboard.
  • By scanning a QR-Code: you can re-quest a credential. The Wallet is compatible with the OpenID4VCI standard, so you should be able to request (and receive) credentials also from Credential Issuers which are setup or connected to DIDroom.

Your credentials ​

You can browse the credentials you received in the Wallet page of the Wallet (D'Oh!), they will be listed as cards and show you the issuer that produced them, their expiry and descriptions.

diff --git a/docs/pr-preview/pr-19/guides/2_wallet/4_present_credential.html b/docs/pr-preview/pr-19/guides/2_wallet/4_present_credential.html index 7e65fcf..33074f2 100644 --- a/docs/pr-preview/pr-19/guides/2_wallet/4_present_credential.html +++ b/docs/pr-preview/pr-19/guides/2_wallet/4_present_credential.html @@ -18,7 +18,7 @@ -
Skip to content

Present a credential ​

A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer.

The purpose of having a credential is to able to prove the claims to someone in a secure and private way. In order to prove the claims, you will need to present the credential, the term 'present' has technical implication that involve:

  • Cryptographic transformations applied to the credential in order to produce a Verifiable Presentation
  • The communication of the Verifiable Presentation to an application or microservice (called Relying Party) that will verify the claims

Those steps (among with others that we omit for simplicity) occur in the Verification Flow.

The Verification Flow ​

The Verification Flow is initiated by a Verifier, meaning a user equipped with the Verifier App and the following happens:

  1. The Verifier App produces a QR-Code
  2. The user holding the Wallet App, opens QR-Code reader and scans the QR-Code
  3. The Wallet App reads the QR-Code, reads the request of the Verifier and search through list of obtained credentials to see if any of them matches the request.
  4. If a credential is found, that matches the request of the Verifier, than a Verifiable Presentation is produced and sent to Relying Party
  5. If the verification of the Verifiable Presentation is successful (or fails), a notification will appear in both the Wallet and Verififer App
+
Skip to content

Present a credential ​

A credential is a cryptographic object, containing a set of claims and a signature from a trusted issuer.

The purpose of having a credential is to able to prove the claims to someone in a secure and private way. In order to prove the claims, you will need to present the credential, the term 'present' has technical implication that involve:

  • Cryptographic transformations applied to the credential in order to produce a Verifiable Presentation
  • The communication of the Verifiable Presentation to an application or microservice (called Relying Party) that will verify the claims

Those steps (among with others that we omit for simplicity) occur in the Verification Flow.

The Verification Flow ​

The Verification Flow is initiated by a Verifier, meaning a user equipped with the Verifier App and the following happens:

  1. The Verifier App produces a QR-Code
  2. The user holding the Wallet App, opens QR-Code reader and scans the QR-Code
  3. The Wallet App reads the QR-Code, reads the request of the Verifier and search through list of obtained credentials to see if any of them matches the request.
  4. If a credential is found, that matches the request of the Verifier, than a Verifiable Presentation is produced and sent to Relying Party
  5. If the verification of the Verifiable Presentation is successful (or fails), a notification will appear in both the Wallet and Verififer App
diff --git a/docs/pr-preview/pr-19/guides/2_wallet/5_preferences.html b/docs/pr-preview/pr-19/guides/2_wallet/5_preferences.html index 7a2b725..ad0c66d 100644 --- a/docs/pr-preview/pr-19/guides/2_wallet/5_preferences.html +++ b/docs/pr-preview/pr-19/guides/2_wallet/5_preferences.html @@ -18,7 +18,7 @@ -
Skip to content

Preference page ​

In the Preference page of the Wallet App you can:

  • See your current Username
  • See the DID of the user, containing your public keys
  • See what organization(s) the user is part of
  • See the version of the Wallet App
  • Change the wallet language
  • Log out
+
Skip to content

Preference page ​

In the Preference page of the Wallet App you can:

  • See your current Username
  • See the DID of the user, containing your public keys
  • See what organization(s) the user is part of
  • See the version of the Wallet App
  • Change the wallet language
  • Log out
diff --git a/docs/pr-preview/pr-19/guides/2_wallet/index.html b/docs/pr-preview/pr-19/guides/2_wallet/index.html index edd9b9c..dbb3025 100644 --- a/docs/pr-preview/pr-19/guides/2_wallet/index.html +++ b/docs/pr-preview/pr-19/guides/2_wallet/index.html @@ -18,7 +18,7 @@ -
Skip to content

πŸ†” Wallet App ​

The Wallet App is an Android/iOS mobile app whose purpose is to request and present credentials.

The Wallet App allows the user to creat an account and the same account can be used to login onto the DIDroom Control Room.

Features ​

Once you login, you can:

  • Select a credential to request, from the list you can see in the Wallet's home. The credentials that you see listed here, depend on what organization(s) your part of.
  • Scan a QR code to receive a credential
  • Scan a QR code (from the Verifier App) to present a credential.
+
Skip to content

πŸ†” Wallet App ​

The Wallet App is an Android/iOS mobile app whose purpose is to request and present credentials.

The Wallet App allows the user to creat an account and the same account can be used to login onto the DIDroom Dashboard.

Features ​

Once you login, you can:

  • Select a credential to request, from the list you can see in the Wallet's home. The credentials that you see listed here, depend on what organization(s) your part of.
  • Scan a QR code to receive a credential
  • Scan a QR code (from the Verifier App) to present a credential.
diff --git a/docs/pr-preview/pr-19/guides/3_verifier/1_join_org.html b/docs/pr-preview/pr-19/guides/3_verifier/1_join_org.html index aae1dcc..e56527f 100644 --- a/docs/pr-preview/pr-19/guides/3_verifier/1_join_org.html +++ b/docs/pr-preview/pr-19/guides/3_verifier/1_join_org.html @@ -18,7 +18,7 @@ -
Skip to content

Create an account and join an organization ​

In order to use the Verifier app and the Verification Flow, the user is supposed to:

  1. have an account on DIDroom Control Room
  2. be part of an organization

The Verifier only allows a user to login (with an existing account), meaning that an account has to be created on the DIDroom Control Room or in the Wallet

+
Skip to content

Create an account and join an organization ​

In order to use the Verifier app and the Verification Flow, the user is supposed to:

  1. have an account on DIDroom Dashboard
  2. be part of an organization

The Verifier only allows a user to login (with an existing account), meaning that an account has to be created on the DIDroom Dashboard or in the Wallet

diff --git a/docs/pr-preview/pr-19/guides/3_verifier/2_verification_flow.html b/docs/pr-preview/pr-19/guides/3_verifier/2_verification_flow.html index 034fa3e..55a1e24 100644 --- a/docs/pr-preview/pr-19/guides/3_verifier/2_verification_flow.html +++ b/docs/pr-preview/pr-19/guides/3_verifier/2_verification_flow.html @@ -18,7 +18,7 @@ -
Skip to content

Start a Verification Flow ​

After you logged in the Verifier, you will be presented with a list Verification Flows, you can run. The flows you see depend on the organization(s) you are member of.

To start a Verification Flow just click the one you want to start from the list: a QR code with a session ID should appear in the next page.

+
Skip to content

Start a Verification Flow ​

After you logged in the Verifier, you will be presented with a list Verification Flows, you can run. The flows you see depend on the organization(s) you are member of.

To start a Verification Flow just click the one you want to start from the list: a QR code with a session ID should appear in the next page.

diff --git a/docs/pr-preview/pr-19/guides/3_verifier/3_verify.html b/docs/pr-preview/pr-19/guides/3_verifier/3_verify.html index dde97ed..f881210 100644 --- a/docs/pr-preview/pr-19/guides/3_verifier/3_verify.html +++ b/docs/pr-preview/pr-19/guides/3_verifier/3_verify.html @@ -18,7 +18,7 @@ -
Skip to content

Verification: Success or Failure ​

The Verification Flow is active for some time, during this time a user holding a Wallet can scan the QR Code generated by the Verifier. Scanning the QR will trigger the credential presentation to the Reying Party (an external microservice that verifies the credential).

The result can be:

  • Success: if the Relying Party returns a success result before the expiration
  • Failure: if the Relying Party returns a failure or if nothing happens before the expiration
+
Skip to content

Verification: Success or Failure ​

The Verification Flow is active for some time, during this time a user holding a Wallet can scan the QR Code generated by the Verifier. Scanning the QR will trigger the credential presentation to the Reying Party (an external microservice that verifies the credential).

The result can be:

  • Success: if the Relying Party returns a success result before the expiration
  • Failure: if the Relying Party returns a failure or if nothing happens before the expiration
diff --git a/docs/pr-preview/pr-19/guides/3_verifier/index.html b/docs/pr-preview/pr-19/guides/3_verifier/index.html index e2c7d4d..b9bc322 100644 --- a/docs/pr-preview/pr-19/guides/3_verifier/index.html +++ b/docs/pr-preview/pr-19/guides/3_verifier/index.html @@ -18,7 +18,7 @@ -
Skip to content

βœ”οΈ Verifier App ​

The Verifier App is an Android/iOS mobile app whose purpose is to start a Verification Flow.

The Verifer App requires the user to have created an account (and ideally be part of an organization), so an account needs to be created on the DIDroom Control Room or in the Wallet.

+
Skip to content

βœ”οΈ Verifier App ​

The Verifier App is an Android/iOS mobile app whose purpose is to start a Verification Flow.

The Verifer App requires the user to have created an account (and ideally be part of an organization), so an account needs to be created on the DIDroom Dashboard or in the Wallet.

diff --git a/docs/pr-preview/pr-19/guides/404.html b/docs/pr-preview/pr-19/guides/404.html index 2f043fc..b3c01d5 100644 --- a/docs/pr-preview/pr-19/guides/404.html +++ b/docs/pr-preview/pr-19/guides/404.html @@ -18,7 +18,7 @@ -
Skip to content

Coming soon! ​

🚫 Oops! Looks like the document you were hunting for is playing hide and seek with us! Don't worry, our crack team of digital detectives is on the case. πŸ•΅οΈβ€β™‚οΈπŸ” While they're hot on the trail, feel free to kick back, grab a snack, and try your search again in a bit. We promise it'll turn up sooner than you can say "404!" πŸ•°οΈπŸ”Ž

+
Skip to content

Coming soon! ​

🚫 Oops! Looks like the document you were hunting for is playing hide and seek with us! Don't worry, our crack team of digital detectives is on the case. πŸ•΅οΈβ€β™‚οΈπŸ” While they're hot on the trail, feel free to kick back, grab a snack, and try your search again in a bit. We promise it'll turn up sooner than you can say "404!" πŸ•°οΈπŸ”Ž

diff --git a/docs/pr-preview/pr-19/guides/4_sysadmin/deploy_microservices.html b/docs/pr-preview/pr-19/guides/4_sysadmin/deploy_microservices.html index 994858a..78b5e22 100644 --- a/docs/pr-preview/pr-19/guides/4_sysadmin/deploy_microservices.html +++ b/docs/pr-preview/pr-19/guides/4_sysadmin/deploy_microservices.html @@ -18,7 +18,7 @@ -
Skip to content

Deploy microservices ​

for πŸ› οΈ System Administrator ​

DIDroom Microservices are the technological core of the solution: those components offer cryptographic functions as well as transport protocols. The microservices are completely isolated from the Dashboard, meaning that:

  • The code is hosted in a separated repo
  • The microservices can run independently from the Dashboard
  • Each microservice has its own secret keys and DID to identify them: those are generated by the microservice at its first provisioning
  • The Credential Issuer and Authorization Server microservices, contain the custom code you defined in the respective templates

Preparation ​

  1. Register a domain name, like myapp.com and ideally register 3 subdomains as:

    • issuer.myapp.com
    • authz.myapp.com
    • rp.myapp.com
  2. Setup a linux server, configure TLS and make sure the server is resolved at: https://myapp.com/ or ideally to the 3 subdomains as above. You'll need to setup a reverse proxy (more about it later).

  3. Make sure you have all the commands installed, type:

bash
  sudo apt install make wget jq git -y

Provision and download the Microservices ​

  • Go to https://dashboard.didroom.com and create at least an Issuance Flow. During the creation, you will have to create multiple objects, such as templates and setup microservices.
  • Then From the Microservices page, click on "Download microservices"
  • The Microservices page should look like this:

Microservices-manual-deployment

Download and deploy the Microservices ​

  1. Copy the microservices.zip file on the server and unzip it, it should create multiple folders, one for each microservice you configured and used in the dashboard. Assuming that you have 3 microservices named my-issuer, my-authz, my-rp then do:

  2. type:

bash
cd  my-issuer
+    
Skip to content

Deploy microservices ​

for πŸ› οΈ System Administrator ​

DIDroom Microservices are the technological core of the solution: those components offer cryptographic functions as well as transport protocols. The microservices are completely isolated from the Dashboard, meaning that:

  • The code is hosted in a separated repo
  • The microservices can run independently from the Dashboard
  • Each microservice has its own secret keys and DID to identify them: those are generated by the microservice at its first provisioning
  • The Credential Issuer and Authorization Server microservices, contain the custom code you defined in the respective templates

Preparation ​

  1. Register a domain name, like myapp.com and ideally register 3 subdomains as:

    • issuer.myapp.com
    • authz.myapp.com
    • rp.myapp.com
  2. Setup a linux server, configure TLS and make sure the server is resolved at: https://myapp.com/ or ideally to the 3 subdomains as above. You'll need to setup a reverse proxy (more about it later).

  3. Make sure you have all the commands installed, type:

bash
  sudo apt install make wget jq git -y

Provision and download the Microservices ​

  • Go to https://dashboard.didroom.com and create at least an Issuance Flow. During the creation, you will have to create multiple objects, such as templates and setup microservices.
  • Then From the Microservices page, click on "Download microservices"
  • The Microservices page should look like this:

Microservices-manual-deployment

Download and deploy the Microservices ​

  1. Copy the microservices.zip file on the server and unzip it, it should create multiple folders, one for each microservice you configured and used in the dashboard. Assuming that you have 3 microservices named my-issuer, my-authz, my-rp then do:

  2. type:

bash
cd  my-issuer
 make up

And repeat this for each of the 3 microservices. The make up command generates the secret keys for the microservices, and registers a DID for each of them

From that moment, you should have the microservices (authz_server, credential_issuer and relying_party) configured and running, on the port you have configured in the dashboard.

Reverse proxy (with Caddy) ​

The OpenID4VCI and OpenID4VP protocols dictate the use of TLS, so you'll need to be able to access each microservice via https://

There are multiple ways to do this, using e.g. Nginx. We recommend using Caddy at least in test environments as it's easy and fast to configure.

Important:

While you configure and test Caddy, the microservices must all be running already, at the correct ports, because Caddy will try to bind the ports when it's started (or reloaded). So make sure you have the microservices running before you go into this section.

Install Caddy ​

To install Caddy check the documentation or try your luck with:

bash
sudo apt update
 sudo apt install caddy

Caddy config file ​

To edit Caddy config file, do :

bash
sudo nano /etc/caddy/Caddyfile

Setup Caddy with 3 subdomains ​

If you have 3 subdomains, assuming that the microservices are running on the ports 3001, 3002 and 3003, add to Caddyfile:

caddy

 issuer.myapp.com {
diff --git a/docs/pr-preview/pr-19/guides/4_sysadmin/index.html b/docs/pr-preview/pr-19/guides/4_sysadmin/index.html
index 5141d88..1512c0a 100644
--- a/docs/pr-preview/pr-19/guides/4_sysadmin/index.html
+++ b/docs/pr-preview/pr-19/guides/4_sysadmin/index.html
@@ -18,7 +18,7 @@
     
   
   
-    
Skip to content

πŸ› οΈ System Administrator ​

Welcome, System Administrator! This guide provides step-by-step instructions for setting up and managing the infrastructure that powers DiDRoom. Whether you're deploying a new instance, self-hosting the dashboard, or deploying microservices, this guide has you covered.

Setup an Instance πŸ—οΈ ​

Learn how to set up a new instance of DiDRoom to get started with decentralized identity management and secure communication.

Self-Host the Dashboard πŸ–₯️ ​

Explore the process of self-hosting the DiDRoom dashboard to gain full control over your infrastructure and data.

Deploy Microservices πŸš€ ​

Discover how to deploy DiDRoom microservices to enable various functionalities and services within your organization.

+
Skip to content

πŸ› οΈ System Administrator ​

Welcome, System Administrator! This guide provides step-by-step instructions for setting up and managing the infrastructure that powers DiDRoom. Whether you're deploying a new instance, self-hosting the dashboard, or deploying microservices, this guide has you covered.

Setup an Instance πŸ—οΈ ​

Learn how to set up a new instance of DiDRoom to get started with decentralized identity management and secure communication.

Self-Host the Dashboard πŸ–₯️ ​

Explore the process of self-hosting the DiDRoom dashboard to gain full control over your infrastructure and data.

Deploy Microservices πŸš€ ​

Discover how to deploy DiDRoom microservices to enable various functionalities and services within your organization.

diff --git a/docs/pr-preview/pr-19/guides/4_sysadmin/setup.html b/docs/pr-preview/pr-19/guides/4_sysadmin/setup.html index 1175090..4e0235a 100644 --- a/docs/pr-preview/pr-19/guides/4_sysadmin/setup.html +++ b/docs/pr-preview/pr-19/guides/4_sysadmin/setup.html @@ -18,8 +18,8 @@ -
Skip to content

Setup the Dashboard ​

for πŸ› οΈ System Administrator ​

For users who prefer full control over their infrastructure and data, Didroom supports on-premise deployment. Follow these steps to deploy the DIDroom Dashboard on your own infrastructure:

TIP

If you are unfamiliar with servers, devops and unix commands look also at the Software as a service section that will allow you to define a credential issuance flow in minutes! Without installing anything on your servers.

Checklist

Before starting please make sure you have a

  1. Git installed on your server
  2. Docker compose installed on your server
  3. DID admin domain/context as specified on dyne/W3C-DID

1. clone the repo ​

bash
git clone --recursive https://github.com/forkbombeu/signroom

WARNING

Pay attention at the --recursive that will clone also the sub repositories!

2. Run the Dashboard (Admin Panel and DIDroom Control Room) ​

bash
cd signroom
-docker compose up --build

This will run the DIDroom Dashboard which includes two interconnected web-applications:

  • Admin Panel: based on PocketBase, this application is accessible only to the sysadmin and it allows to configure and edit data structure and API configurations.
  • DIDroom Control Room: this the DIDroom web application accessible to all users, allows to manage credential issuance and verification flows and their deployment and the organizations

The two web applications run on two different ports and have different user accounts.

3. Create an account and log in onto the DIDroom Control Room ​

Go to:

http
http://localhost:4173/

Register a new uer and log in. From this point, you should be able to create an organization, and from there you can create issuance and verification flows, etc.

4. login onto to the Admin Panel ​

Go to:

http
http://localhost:8090/_

TIP

Pay attention at the final underscore, of the address

A default administrator user is created with the following user and pass:

user: admin@example.org

pass: adminadmin

5. Setup the DID service ​

DIDroom uses the Dyne's DID service as a public key infrastructure. You can choose to ask us (Forkbomb or Dyne.org) to provide you the admin data, or deploy Dyne's DID service on your server.

You can ask for your admin domain/context as specified on dyne/W3C-DID

Follow the video:

  1. login into the dashboard
  2. go on the features collection
  3. select the DID feature
  4. insert you admin data
+
Skip to content

Setup the Dashboard ​

for πŸ› οΈ System Administrator ​

For users who prefer full control over their infrastructure and data, Didroom supports on-premise deployment. Follow these steps to deploy the DIDroom Dashboard on your own infrastructure:

TIP

If you are unfamiliar with servers, devops and unix commands look also at the Software as a service section that will allow you to define a credential issuance flow in minutes! Without installing anything on your servers.

Checklist

Before starting please make sure you have a

  1. Git installed on your server
  2. Docker compose installed on your server
  3. DID admin domain/context as specified on dyne/W3C-DID

1. clone the repo ​

bash
git clone --recursive https://github.com/forkbombeu/signroom

WARNING

Pay attention at the --recursive that will clone also the sub repositories!

2. Run the Dashboard (Admin Panel and DIDroom Dashboard) ​

bash
cd signroom
+docker compose up --build

This will run the DIDroom Dashboard which includes two interconnected web-applications:

  • Admin Panel: based on PocketBase, this application is accessible only to the sysadmin and it allows to configure and edit data structure and API configurations.
  • DIDroom Dashboard: this the DIDroom web application accessible to all users, allows to manage credential issuance and verification flows and their deployment and the organizations

The two web applications run on two different ports and have different user accounts.

3. Create an account and log in onto the DIDroom Dashboard ​

Go to:

http
http://localhost:4173/

Register a new uer and log in. From this point, you should be able to create an organization, and from there you can create issuance and verification flows, etc.

4. login onto to the Admin Panel ​

Go to:

http
http://localhost:8090/_

TIP

Pay attention at the final underscore, of the address

A default administrator user is created with the following user and pass:

user: admin@example.org

pass: adminadmin

5. Setup the DID service ​

DIDroom uses the Dyne's DID service as a public key infrastructure. You can choose to ask us (Forkbomb or Dyne.org) to provide you the admin data, or deploy Dyne's DID service on your server.

You can ask for your admin domain/context as specified on dyne/W3C-DID

Follow the video:

  1. login into the dashboard
  2. go on the features collection
  3. select the DID feature
  4. insert you admin data
diff --git a/docs/pr-preview/pr-19/guides/4_sysadmin/setup_dashboard.html b/docs/pr-preview/pr-19/guides/4_sysadmin/setup_dashboard.html index 6aeab6b..9da1ce0 100644 --- a/docs/pr-preview/pr-19/guides/4_sysadmin/setup_dashboard.html +++ b/docs/pr-preview/pr-19/guides/4_sysadmin/setup_dashboard.html @@ -18,7 +18,7 @@ -
Skip to content

Self-Host the Dashboard ​

for πŸ› οΈ System Administrator ​

This chapter contains best practices about deployment and Dev-Ops (coming soon).

+
Skip to content

Self-Host the Dashboard ​

for πŸ› οΈ System Administrator ​

This chapter contains best practices about deployment and Dev-Ops (coming soon).

diff --git a/docs/pr-preview/pr-19/guides/5_signature/1_signature.html b/docs/pr-preview/pr-19/guides/5_signature/1_signature.html index e318d12..a459d09 100644 --- a/docs/pr-preview/pr-19/guides/5_signature/1_signature.html +++ b/docs/pr-preview/pr-19/guides/5_signature/1_signature.html @@ -18,7 +18,7 @@ -
Skip to content

Signature ​

The Signature features allow to you sign documents and files, according to the standards PaDES, CaDES, JaDES or XaDES using your secrets keys and a certificate.

You can as well verify signatures from 3rd parties.

Supported types ​

The standard supported (PaDES/CaDES/JaDES/XaDES) are compliant with the eIDAS regulation and are the ones most widely accepted in the industry.

Signature flow ​

The signature occurs in the Webapp, specifically in the browser: this implies that your secret keys are only store and used in the browser and never communicated to anyone, according to the privacy-by-design and end-to-encryption principles.

The signature produced in the Webapp is packed into a JSON object and communicated to a service we run in backend using the open source Digital Signing Service software, the official software implemented and maintained by the European Commission, for digital signatures. The software is open source, you can find the source code on https://github.com/esig/dss/.

Important!

The secret key to sign documents is stored and used only in the browser (thus the signature works offline!), are never communicated to anyone and from the signature it's mathematically impossible to recreate the secret key.

Import a secret key and certificate ​

You probably want to start by importing a secret key and and an X.509 certificate. To do that press on the Certificates button on the sidebar:

Signature1

Then press the button Add a Key-Certificate Pair in top right of the page, a modal window will pop-up, fill it with the info about your key

Signature1

As a result you should see your key/certificate appearing in the list. Under Algorithm you see the type of signature that can be performed with each given pair of key/certificate. Currently we support:

  • Elliptic curve signatures
    • ECDSA on secp256r1 (also known as P-256 or NIST-256)
    • EdDSA on Ed25519
  • RSA
    • RSASSA-PKCS1-v1_5
    • RSA-PSS

In the example below, we added an RSA key/certificate:

Signature1

Create a certificate (for test purposes) ​

if you want to test the software, you could create a secret key, along with a self-signed X.509 certificate.

  1. Create a secret key, in this case this will allow you to produce an ECDSA signature on the secp256r1 curve, with the following line
bash
openssl ecparam -out ec_key.pem -name secp256r1 -genkey

The output should look like:

-----BEGIN EC PARAMETERS-----
+    
Skip to content

Signature ​

The Signature features allow to you sign documents and files, according to the standards PaDES, CaDES, JaDES or XaDES using your secrets keys and a certificate.

You can as well verify signatures from 3rd parties.

Supported types ​

The standard supported (PaDES/CaDES/JaDES/XaDES) are compliant with the eIDAS regulation and are the ones most widely accepted in the industry.

Signature flow ​

The signature occurs in the Webapp, specifically in the browser: this implies that your secret keys are only store and used in the browser and never communicated to anyone, according to the privacy-by-design and end-to-encryption principles.

The signature produced in the Webapp is packed into a JSON object and communicated to a service we run in backend using the open source Digital Signing Service software, the official software implemented and maintained by the European Commission, for digital signatures. The software is open source, you can find the source code on https://github.com/esig/dss/.

Important!

The secret key to sign documents is stored and used only in the browser (thus the signature works offline!), are never communicated to anyone and from the signature it's mathematically impossible to recreate the secret key.

Import a secret key and certificate ​

You probably want to start by importing a secret key and and an X.509 certificate. To do that press on the Certificates button on the sidebar:

Signature1

Then press the button Add a Key-Certificate Pair in top right of the page, a modal window will pop-up, fill it with the info about your key

Signature1

As a result you should see your key/certificate appearing in the list. Under Algorithm you see the type of signature that can be performed with each given pair of key/certificate. Currently we support:

  • Elliptic curve signatures
    • ECDSA on secp256r1 (also known as P-256 or NIST-256)
    • EdDSA on Ed25519
  • RSA
    • RSASSA-PKCS1-v1_5
    • RSA-PSS

In the example below, we added an RSA key/certificate:

Signature1

Create a certificate (for test purposes) ​

if you want to test the software, you could create a secret key, along with a self-signed X.509 certificate.

  1. Create a secret key, in this case this will allow you to produce an ECDSA signature on the secp256r1 curve, with the following line
bash
openssl ecparam -out ec_key.pem -name secp256r1 -genkey

The output should look like:

-----BEGIN EC PARAMETERS-----
 BggqhkjOPQMBBw==
 -----END EC PARAMETERS-----
 -----BEGIN EC PRIVATE KEY-----
diff --git a/docs/pr-preview/pr-19/guides/5_signature/2_multisignature.html b/docs/pr-preview/pr-19/guides/5_signature/2_multisignature.html
index 2995d4b..7e17896 100644
--- a/docs/pr-preview/pr-19/guides/5_signature/2_multisignature.html
+++ b/docs/pr-preview/pr-19/guides/5_signature/2_multisignature.html
@@ -18,7 +18,7 @@
     
   
   
-    
Skip to content

Multisignature Flow ​

The Multisignature Flow is a an implementation of the cryptographic flow described in the Reflow Multisignature paper. This allows users to create a JSON object to be signed, invite users to sign it, set a deadline and wait for their signatures. The signature process uses the homomorphic capabilities of the BLS 12-381 curve - see here if you're curious. The responses are anonymous and the output is a cryptographical object verifiable by anyone.

Create a Multisignature ​

Click on Multisignatures in the sidebar to get started:

Signature1

The first page is a brieg introducton giving some basic concepts. See below what a Coconut Issuer is and what it's used for.

Signature1

Click on Start Setup to get started, here you'll have to fill:

  • Name: the name of this Multisignature flow, the name will appear in your Multisignature page and those you invite as well.
  • Credential Issuer: (Coconut Issuer) this is treated in a subchapter below. For now, just select the Coconut issuer we offer from the list
  • Reflow Seal: this is the data that you're asking to sign (see the subchapter below). In this Reflow Seal, we have 3 individuals (Spacetest, nenno and GI Hefe) agreeing on their respective yearly designated driver quota.
  • Settings: here you can specify the expiry of the Multisignature, meaning that the invitees will only be allowed to sign until the deadline

The setup page looks like:

Signature1

The Reflow Seal and the signing/verification algorithm ​

A Reflow Seal (as in the paper) is the data that the signees have to agree to sign. In our first implementation it's a JSON object and it can easily refer to a document, the content of a URL or something stored in a database or blockchain.

In fact, that is an oversimplifycation of what a Reflow Seal is, a slightly more encompassing explaination is: the Reflow Seal is a cryptographic object containing the JSON above, along with the public keys and the signatures (if they choose to sign) of the signees.

If you're not satisfied with this and are ready to deep-dive into the magic world of cryptography, read the text box below.

Warning: hard-core cryptography ahead 🀯

In the cryptographic flow happening under the hood after the setup, The Reflow Seal is hashed, then each signee (that chooses to sign) will produce a BLS 12-381 signature that will be homomorphically aggregated to the hash of the Reflow Seal. We did in fact omit an important step: while the Reflow Seal was being hashed, the public keys of the signees have been homomorphically aggregated.

After all the signatures have been collected and aggregated, a Miller Loop ( read a somewhat easy explanation here) is performed to verify if the aggregated signatures match the aggregated public keys: if they do, the Multisignature is successful. This is the core of the algorithm, which enables anonymous signatures and was originally designed for blockchain applications. We did actually omit one more step, the Coconut credential issuance, which we cover below.

The Coconut Issuer ​

The Coconut Paper defines a zero knowledge proof flow for credential issuance, with plenty of bells and whistles. In our implementation, the Coconut Issuer produces a Coconut credential for each of the users invited to sing.

Warning: more hard-core cryptography ahead 🀯🀯

Using a Coconut credential has the purpose of making sure that the ones signing the Reflow Seal, are the ones who have been invited to sign, in order to overcoming the rogue public key attack while keeping the signature anonymous and cryptographically verifiable.

Invite the users ​

When done with the steps above, click on Confirm Content on the top right of the page to land on the Invite Users page, that you can use to invite users base on their username or email (if they chose to have the email as public).

Signature1

We chose to invite the users Spacetest, nenno and GI Hefe which are the people who will be sharing the car, according to the Reflow Seal.

Note: The choice to include the signees' names in the Reflow Seal was aimed exclusively for educational purposes: you can write whatever you want in the Reflow Seal and invite whoever you want to sign it.

The result should be something like this:

Signature1

Finalize ​

This page shows you a recap of the Multisignature flow you're working on: at this stage you can still change things, once you click on Confirm and Sign in the top right of the page, the cryptographic material will be produced and you won't be able to make changes after that.

Signature1

Wait for signatures ​

After you clicked on Confirm and Sign, the Multisignature is ready to be signed and a notification is sent per email to the signees. You'll see it here:

Signature1

Check status ​

If you click on "View" on the Multisignature, you can see the status, including if everyone has signed or someone is missing.

Signature1

+
Skip to content

Multisignature Flow ​

The Multisignature Flow is a an implementation of the cryptographic flow described in the Reflow Multisignature paper. This allows users to create a JSON object to be signed, invite users to sign it, set a deadline and wait for their signatures. The signature process uses the homomorphic capabilities of the BLS 12-381 curve - see here if you're curious. The responses are anonymous and the output is a cryptographical object verifiable by anyone.

Create a Multisignature ​

Click on Multisignatures in the sidebar to get started:

Signature1

The first page is a brieg introducton giving some basic concepts. See below what a Coconut Issuer is and what it's used for.

Signature1

Click on Start Setup to get started, here you'll have to fill:

  • Name: the name of this Multisignature flow, the name will appear in your Multisignature page and those you invite as well.
  • Credential Issuer: (Coconut Issuer) this is treated in a subchapter below. For now, just select the Coconut issuer we offer from the list
  • Reflow Seal: this is the data that you're asking to sign (see the subchapter below). In this Reflow Seal, we have 3 individuals (Spacetest, nenno and GI Hefe) agreeing on their respective yearly designated driver quota.
  • Settings: here you can specify the expiry of the Multisignature, meaning that the invitees will only be allowed to sign until the deadline

The setup page looks like:

Signature1

The Reflow Seal and the signing/verification algorithm ​

A Reflow Seal (as in the paper) is the data that the signees have to agree to sign. In our first implementation it's a JSON object and it can easily refer to a document, the content of a URL or something stored in a database or blockchain.

In fact, that is an oversimplifycation of what a Reflow Seal is, a slightly more encompassing explaination is: the Reflow Seal is a cryptographic object containing the JSON above, along with the public keys and the signatures (if they choose to sign) of the signees.

If you're not satisfied with this and are ready to deep-dive into the magic world of cryptography, read the text box below.

Warning: hard-core cryptography ahead 🀯

In the cryptographic flow happening under the hood after the setup, The Reflow Seal is hashed, then each signee (that chooses to sign) will produce a BLS 12-381 signature that will be homomorphically aggregated to the hash of the Reflow Seal. We did in fact omit an important step: while the Reflow Seal was being hashed, the public keys of the signees have been homomorphically aggregated.

After all the signatures have been collected and aggregated, a Miller Loop ( read a somewhat easy explanation here) is performed to verify if the aggregated signatures match the aggregated public keys: if they do, the Multisignature is successful. This is the core of the algorithm, which enables anonymous signatures and was originally designed for blockchain applications. We did actually omit one more step, the Coconut credential issuance, which we cover below.

The Coconut Issuer ​

The Coconut Paper defines a zero knowledge proof flow for credential issuance, with plenty of bells and whistles. In our implementation, the Coconut Issuer produces a Coconut credential for each of the users invited to sing.

Warning: more hard-core cryptography ahead 🀯🀯

Using a Coconut credential has the purpose of making sure that the ones signing the Reflow Seal, are the ones who have been invited to sign, in order to overcoming the rogue public key attack while keeping the signature anonymous and cryptographically verifiable.

Invite the users ​

When done with the steps above, click on Confirm Content on the top right of the page to land on the Invite Users page, that you can use to invite users base on their username or email (if they chose to have the email as public).

Signature1

We chose to invite the users Spacetest, nenno and GI Hefe which are the people who will be sharing the car, according to the Reflow Seal.

Note: The choice to include the signees' names in the Reflow Seal was aimed exclusively for educational purposes: you can write whatever you want in the Reflow Seal and invite whoever you want to sign it.

The result should be something like this:

Signature1

Finalize ​

This page shows you a recap of the Multisignature flow you're working on: at this stage you can still change things, once you click on Confirm and Sign in the top right of the page, the cryptographic material will be produced and you won't be able to make changes after that.

Signature1

Wait for signatures ​

After you clicked on Confirm and Sign, the Multisignature is ready to be signed and a notification is sent per email to the signees. You'll see it here:

Signature1

Check status ​

If you click on "View" on the Multisignature, you can see the status, including if everyone has signed or someone is missing.

Signature1

diff --git a/docs/pr-preview/pr-19/guides/5_signature/index.html b/docs/pr-preview/pr-19/guides/5_signature/index.html index 0a00aa5..da13160 100644 --- a/docs/pr-preview/pr-19/guides/5_signature/index.html +++ b/docs/pr-preview/pr-19/guides/5_signature/index.html @@ -18,7 +18,7 @@ -
Skip to content

πŸ–ŠοΈ Signatures ​

The application can produce different types of signatures, using different technologies for different purposes.

Document Signature ​

The Signature features allow to you sign documents and files, according to the standards PaDES, CaDES, JaDES or XaDES using your secrets keys and a certificate.

Multisignature Flow ​

The Multisignature Flow is a an implementation of the cryptographic flow described in the Reflow Multisignature paper. This allows users to create a JSON object to be signed, invite users to sign it, set a deadline and wait for their signatures. The signature process uses the homomorphic capabilities of the BLS 12-381 curve - see here if you're curious. The responses are anonymous and the output is a cryptographical object verifiable by anyone.

+
Skip to content

πŸ–ŠοΈ Signatures ​

The application can produce different types of signatures, using different technologies for different purposes.

Document Signature ​

The Signature features allow to you sign documents and files, according to the standards PaDES, CaDES, JaDES or XaDES using your secrets keys and a certificate.

Multisignature Flow ​

The Multisignature Flow is a an implementation of the cryptographic flow described in the Reflow Multisignature paper. This allows users to create a JSON object to be signed, invite users to sign it, set a deadline and wait for their signatures. The signature process uses the homomorphic capabilities of the BLS 12-381 curve - see here if you're curious. The responses are anonymous and the output is a cryptographical object verifiable by anyone.

diff --git a/docs/pr-preview/pr-19/guides/6_components/generate_keys_keypairoom.html b/docs/pr-preview/pr-19/guides/6_components/generate_keys_keypairoom.html index 09bbc3a..d7df745 100644 --- a/docs/pr-preview/pr-19/guides/6_components/generate_keys_keypairoom.html +++ b/docs/pr-preview/pr-19/guides/6_components/generate_keys_keypairoom.html @@ -18,7 +18,7 @@ -
Skip to content

Keypairoom: (re)generate your Secret Keys ​

Keypairoom is component to generate and regenerate a keyring, containing multiple secret keys (along with the correspondet public keys) in a deterministic and private way.

The cryptographic part consists of multiple Zenroom scripts that allows you to generate a seed by answering to questions that (probably) only you can respond, namely "The challenges".

Privacy ​

The challenges are processed inside the client applications (the Wallet App or the browser where you opened the DIDroom Control Room. Note:

  • The Zenroom scripts processing the answers work offline.
  • Your answers are never communicated to any external service.
  • No one can reconstruct them based on their output: this is certain based on the math behind it, if you're curious you can read about it here.
  • The answers are not used to identify you in anyway, they are just some text that only you can write and belong to your past, so it should not change over time.

More about privacy ​

We hear you saying:

I don't want to answer any question I don't trust writing my personal data anywhere... what now?

So you don't want to write private data anywhere, cause you don't trust software security ever? We (the developers) understand you well and share your feelings πŸ˜ƒ

TLDR: answer using random text and save the seed!

If that's the case, no problem at all: you can just answer to the challenges with some random/junk text. After your secret keys are created, you are offered to store the seed: the seed is a piece of data, printed as a mnemonic phrase that will allow you to re-generate the same secret keys at any time.

What does a mmnemonic phrase look like? Like this:

mnemonic
expect cart barely fruit learn tortoise work essence guitar

If you log out from the wallet, or try to login onto a new device (or browser), you are given the option to paste your seed: therefore store your seed in a safe place, it will work forever, no matter what you answered in that challenges.

+
Skip to content

Keypairoom: (re)generate your Secret Keys ​

Keypairoom is component to generate and regenerate a keyring, containing multiple secret keys (along with the correspondet public keys) in a deterministic and private way.

The cryptographic part consists of multiple Zenroom scripts that allows you to generate a seed by answering to questions that (probably) only you can respond, namely "The challenges".

Privacy ​

The challenges are processed inside the client applications (the Wallet App or the browser where you opened the DIDroom Dashboard. Note:

  • The Zenroom scripts processing the answers work offline.
  • Your answers are never communicated to any external service.
  • No one can reconstruct them based on their output: this is certain based on the math behind it, if you're curious you can read about it here.
  • The answers are not used to identify you in anyway, they are just some text that only you can write and belong to your past, so it should not change over time.

More about privacy ​

We hear you saying:

I don't want to answer any question I don't trust writing my personal data anywhere... what now?

So you don't want to write private data anywhere, cause you don't trust software security ever? We (the developers) understand you well and share your feelings πŸ˜ƒ

TLDR: answer using random text and save the seed!

If that's the case, no problem at all: you can just answer to the challenges with some random/junk text. After your secret keys are created, you are offered to store the seed: the seed is a piece of data, printed as a mnemonic phrase that will allow you to re-generate the same secret keys at any time.

What does a mmnemonic phrase look like? Like this:

mnemonic
expect cart barely fruit learn tortoise work essence guitar

If you log out from the wallet, or try to login onto a new device (or browser), you are given the option to paste your seed: therefore store your seed in a safe place, it will work forever, no matter what you answered in that challenges.

diff --git a/docs/pr-preview/pr-19/guides/6_components/index.html b/docs/pr-preview/pr-19/guides/6_components/index.html index 11dff92..3516381 100644 --- a/docs/pr-preview/pr-19/guides/6_components/index.html +++ b/docs/pr-preview/pr-19/guides/6_components/index.html @@ -18,7 +18,7 @@ -
Skip to content

πŸ“‘ Concepts/Components ​

Issuance and Verification Flows ​

The flows contain the general setup for the Issuance and Verification, with focus on the parameters for a specific credential, such as name, description, logo, microservices issueing/verifying those. The business logic and data structures for the Issuance and Verification are contained in templates, which can be selected inside the Issuance and Verification Flows. The complexity within the protocols and cryptography and hidden behind the DIDroom Control room, the specs are in the pages Issuance flow and Verification flow.

Templates ​

they contain the business logic of authorization, issuance and verification flows along with the data structures used in the flows. An issuance flow contains two templates:

  • The Authorization template (governs the business logic of the Authorization Server)
  • The Issuance template (governs the business logic of the Credential Issuance)

The idea behind this separation, is to allow the user mix and re-use templates in multiple credential issuance flows.

The same template can be used in multiple flows, for example for a credential that has 3 different expiries (1 month, 6 months and 12 month). Or for example two Issuance Flows can use the same Authorization template (cause the Authorization process is the same for both) but two different issuance template (cause the Credential Issuer will need to write different data in the two credentials).


Decentralized Identifier (DID): A globally unique, self-sovereign identifier that enables individuals and entities to have control over their digital identities without relying on centralized authorities.

EUDI-ARF: Acronym for "The European Digital Identity Wallet Architecture and Reference Framework," a technical core of the eIDAS 2.0 regulation that outlines standards for digital identity wallets.

eIDAS 2.0 Regulation: The updated version of the eIDAS (electronic Identification, Authentication and Trust Services) regulation that sets standards for electronic identification and trusted services within the European Union.

Self-Sovereign Identity (SSI): A decentralized identity model that enables individuals to have full control over their digital identity and personal data. SSI allows users to manage and share verifiable credentials without the need for intermediaries.

Verifiable Credentials (VC): Digital attestations that enable the issuance and verification of claims about a subject's identity, attributes, or qualifications.

Wallet: In the context of DidRoom, a software application or platform that allows users to manage their digital identities, store cryptographic keys, create and manage DIDs, and interact with blockchain networks and verifiable credentials.

Zero-Knowledge Proofs: Cryptographic methods that allow a party to prove knowledge of a certain value or statement without revealing the actual value itself. Zero-knowledge proofs enhance privacy and security by demonstrating knowledge without disclosing sensitive information.

W3C-DID: Abbreviation for "W3C Decentralized Identifier," a standard by the World Wide Web Consortium (W3C) for creating, managing, and resolving decentralized identifiers.

W3C-VC: Abbreviation for "W3C Verifiable Credentials," a standard by the World Wide Web Consortium (W3C) for creating and verifying digital credentials in a secure and interoperable manner.

Zenroom: A cryptographic virtual machine developed by Dyne.org Foundation, capable of performing various cryptographic operations and supporting blockchain interoperability.

Zenswarm: A blockchain oracle technology developed for blockchain interoperability and off-chain cryptography, utilizing Zenroom at its core.

+
Skip to content

πŸ“‘ Concepts/Components ​

Issuance and Verification Flows ​

The flows contain the general setup for the Issuance and Verification, with focus on the parameters for a specific credential, such as name, description, logo, microservices issueing/verifying those. The business logic and data structures for the Issuance and Verification are contained in templates, which can be selected inside the Issuance and Verification Flows. The complexity within the protocols and cryptography and hidden behind the DIDroom Dashboard, the specs are in the pages Issuance flow and Verification flow.

Templates ​

they contain the business logic of authorization, issuance and verification flows along with the data structures used in the flows. An issuance flow contains two templates:

  • The Authorization template (governs the business logic of the Authorization Server)
  • The Issuance template (governs the business logic of the Credential Issuance)

The idea behind this separation, is to allow the user mix and re-use templates in multiple credential issuance flows.

The same template can be used in multiple flows, for example for a credential that has 3 different expiries (1 month, 6 months and 12 month). Or for example two Issuance Flows can use the same Authorization template (cause the Authorization process is the same for both) but two different issuance template (cause the Credential Issuer will need to write different data in the two credentials).


Decentralized Identifier (DID): A globally unique, self-sovereign identifier that enables individuals and entities to have control over their digital identities without relying on centralized authorities.

EUDI-ARF: Acronym for "The European Digital Identity Wallet Architecture and Reference Framework," a technical core of the eIDAS 2.0 regulation that outlines standards for digital identity wallets.

eIDAS 2.0 Regulation: The updated version of the eIDAS (electronic Identification, Authentication and Trust Services) regulation that sets standards for electronic identification and trusted services within the European Union.

Self-Sovereign Identity (SSI): A decentralized identity model that enables individuals to have full control over their digital identity and personal data. SSI allows users to manage and share verifiable credentials without the need for intermediaries.

Verifiable Credentials (VC): Digital attestations that enable the issuance and verification of claims about a subject's identity, attributes, or qualifications.

Wallet: In the context of DidRoom, a software application or platform that allows users to manage their digital identities, store cryptographic keys, create and manage DIDs, and interact with blockchain networks and verifiable credentials.

Zero-Knowledge Proofs: Cryptographic methods that allow a party to prove knowledge of a certain value or statement without revealing the actual value itself. Zero-knowledge proofs enhance privacy and security by demonstrating knowledge without disclosing sensitive information.

W3C-DID: Abbreviation for "W3C Decentralized Identifier," a standard by the World Wide Web Consortium (W3C) for creating, managing, and resolving decentralized identifiers.

W3C-VC: Abbreviation for "W3C Verifiable Credentials," a standard by the World Wide Web Consortium (W3C) for creating and verifying digital credentials in a secure and interoperable manner.

Zenroom: A cryptographic virtual machine developed by Dyne.org Foundation, capable of performing various cryptographic operations and supporting blockchain interoperability.

Zenswarm: A blockchain oracle technology developed for blockchain interoperability and off-chain cryptography, utilizing Zenroom at its core.

diff --git a/docs/pr-preview/pr-19/guides/6_components/issuance.html b/docs/pr-preview/pr-19/guides/6_components/issuance.html index 4cb14e0..3ca5214 100644 --- a/docs/pr-preview/pr-19/guides/6_components/issuance.html +++ b/docs/pr-preview/pr-19/guides/6_components/issuance.html @@ -18,7 +18,7 @@ -
Skip to content

Issuance flow ​

The Issuance Flow is compatible with the OpenID4VCI specification

Basics ​

The DIDroom4VP flow involves these main components:

We worked on separating the deployment of the Authorization Server and the Credential Issuer, which can optionally be deployed on the same server but consist of two indpependent microservices.

Diagram: Issuance Flow ​

uml diagram
+
Skip to content

Issuance flow ​

The Issuance Flow is compatible with the OpenID4VCI specification

Basics ​

The DIDroom4VP flow involves these main components:

We worked on separating the deployment of the Authorization Server and the Credential Issuer, which can optionally be deployed on the same server but consist of two indpependent microservices.

Diagram: Issuance Flow ​

uml diagram
diff --git a/docs/pr-preview/pr-19/guides/6_components/verification.html b/docs/pr-preview/pr-19/guides/6_components/verification.html index c9b3b21..78fe0df 100644 --- a/docs/pr-preview/pr-19/guides/6_components/verification.html +++ b/docs/pr-preview/pr-19/guides/6_components/verification.html @@ -18,7 +18,7 @@ -
Skip to content

Verification flow ​

We are following very close the work of the OpenID Foundation on the OpenID4VP communication protocol. Since at the time of writing, OpenID4VP is still a draft, we implemented the custom verification flow DIDroom4VP.

Basics ​

The DIDroom4VP flow involves these main components:

We worked on separating the role of the Relying_Party (a trusted microservice) with the role of the Verifier (a mobile app being managed by a human).

All the data communication happen directly (REST and response), except the communication between the Relying_Party and the Verifier at the end, which uses Firebase.

We also use a microservice acting as a bridge between the Relying_Party and Firebase, which we ommitted in the diagram.

Diagram: Verification Flow (Cross Device) ​

uml diagram
+
Skip to content

Verification flow ​

We are following very close the work of the OpenID Foundation on the OpenID4VP communication protocol. Since at the time of writing, OpenID4VP is still a draft, we implemented the custom verification flow DIDroom4VP.

Basics ​

The DIDroom4VP flow involves these main components:

We worked on separating the role of the Relying_Party (a trusted microservice) with the role of the Verifier (a mobile app being managed by a human).

All the data communication happen directly (REST and response), except the communication between the Relying_Party and the Verifier at the end, which uses Firebase.

We also use a microservice acting as a bridge between the Relying_Party and Firebase, which we ommitted in the diagram.

Diagram: Verification Flow (Cross Device) ​

uml diagram
diff --git a/docs/pr-preview/pr-19/guides/7_terms-and-conditions/delete-account.html b/docs/pr-preview/pr-19/guides/7_terms-and-conditions/delete-account.html index 55d56dc..ae398b2 100644 --- a/docs/pr-preview/pr-19/guides/7_terms-and-conditions/delete-account.html +++ b/docs/pr-preview/pr-19/guides/7_terms-and-conditions/delete-account.html @@ -18,7 +18,7 @@ -
Skip to content
+
Skip to content
diff --git a/docs/pr-preview/pr-19/guides/7_terms-and-conditions/index.html b/docs/pr-preview/pr-19/guides/7_terms-and-conditions/index.html index cdbd15a..73d38ff 100644 --- a/docs/pr-preview/pr-19/guides/7_terms-and-conditions/index.html +++ b/docs/pr-preview/pr-19/guides/7_terms-and-conditions/index.html @@ -18,7 +18,7 @@ -
Skip to content

πŸ—Ž Terms and conditions ​

Below the terms and Conditions for DIDroom solutin (Dashboard, wallet, verifier, microservices, as well as all the subcomponents developed by Forkbomb B.V.)

Last Updated: [30.08.2024]

1. Introduction ​

Welcome to DIDroom Dashboard, part of the DIDroom Digital Identity solution, developed by Forkbomb B.V. These Terms and Conditions ("T&C") govern your use of the DIDroom Dashboard, DIDroom Wallet apps, and associated microservices (collectively, the "Services"). By using our Services, you agree to these T&C.

2. General Information ​

Purpose ​

DIDroom is a Digital Identity solution designed for credential issuance and verification, offering customizable options through a no-code approach. The Services include:

  • DIDroom Dashboard: Web app for managing digital identities.
  • DIDroom Wallet (Holder & Verifier): Mobile apps for storing, presenting, and verifying credentials.
  • Microservices: For credential issuance and verification, which may be hosted by users, third parties, or the solution vendor.

Eligibility ​

The Services are currently available without restrictions.

Account Registration ​

To use the DIDroom Dashboard or DIDroom Wallet apps, users must register an account using their email address.

3. User Roles and Responsibilities ​

User Roles ​

Users may take on different roles, such as holders, verifiers, or issuers, depending on how they utilize the Services. Users are responsible for their own use of the platform, and Forkbomb B.V. cannot be held liable for actions taken by users within these roles.

Prohibited Activities ​

Users are prohibited from engaging in illegal activities, unauthorized use of microservices, and any other activities deemed harmful or inappropriate by Forkbomb B.V.

Misuse ​

Forkbomb B.V. reserves the right to suspend or terminate accounts for any violations of these T&C, including misuse or illegal activities.

4. Open Source and Licensing ​

Open Source Contributions ​

DIDroom is an open-source solution licensed under AGPL 3.0. Users are encouraged to contribute to the project by submitting code or reporting issues on our GitHub repositories, including the main repo at DIDroom GitHub.

Rights and Obligations ​

All components of the DIDroom solution are licensed under AGPL 3.0, which grants users certain rights and imposes obligations related to the use, modification, and distribution of the software.

Modification Guidelines ​

DIDroom is designed with white-labeling in mind. All GUI components are sourced from an external dependency, available at DIDroom Components GitHub, and can be explored via the Storybook at Storybook for DIDroom Components.

5. Fees and Payments ​

Freemium Model ​

DIDroom offers a Freemium model. Details of the features included in the free version and those requiring payment can be found on our Pricing Page.

Payment Terms ​

For pricing details and payment terms, please refer to the Pricing Page.

Refund Policy ​

We offer a 30-day money-back guarantee, no questions asked, for any paid features or services.

6. Intellectual Property ​

IP Rights ​

Forkbomb B.V. holds all intellectual property rights to the DIDroom brand, content, and technology, excluding the open-source code licensed under AGPL 3.0.

User-Submitted Content ​

Users can upload Zenroom scripts and other non-private data to the platform. By doing so, they grant Forkbomb B.V. the right to reuse and publish this content after removing any personal information. Forkbomb B.V. will adhere strictly to GDPR and California privacy regulations for all personal data.

7. Liability and Disclaimers ​

No Warranty ​

There is no warranty provided for free users of the DIDroom solution. For paying users, our liability is limited to the extent permitted by law.

Third-Party Services ​

DIDroom integrates with third-party services via APIs and webhooks. Forkbomb B.V. is not responsible for how these integrations are used or misused by users or third parties.

User Responsibilities for Self-Hosted Services ​

Users who host their own microservices are responsible for the security and management of those services, including the creation and publication of cryptographic keys. Forkbomb B.V. disclaims any liability for the use or misuse of self-hosted services.

8. Termination of Services ​

Account Termination by Forkbomb B.V. ​

Forkbomb B.V. reserves the right to terminate or suspend user accounts in cases of violations, misuse, or inactivity.

Account Termination by Users ​

Users may terminate their accounts at any time by contacting support. Upon termination, all data hosted online by Forkbomb B.V. will be deleted. Data stored on users' mobile apps or self-hosted microservices will remain unaffected.

Data Retention After Termination ​

Credentials and data stored in the DIDroom Wallet apps will not be affected by account termination and will remain with the user.

9. Governing Law and Dispute Resolution ​

Governing Law ​

These T&C are governed by Dutch law.

Dispute Resolution ​

Any disputes will be resolved in the courts of Amsterdam.

10. Changes to the Terms ​

Notification of Changes ​

Users will be notified of any changes to these T&C via email.

Notice Period ​

Changes to the T&C will take effect 15 days after notification.

11. Contact Information ​

Support ​

For questions, support, or issues related to these T&C, please contact us at info@forkbomb.eu.

12. Miscellaneous ​

Force Majeure ​

Forkbomb B.V. is not liable for any delays or failures in performance resulting from events beyond our reasonable control, such as natural disasters, acts of war, or government actions.

Severability ​

If any provision of these T&C is found to be unenforceable, the remaining provisions will continue in full force and effect.

+
Skip to content

πŸ—Ž Terms and conditions ​

Below the terms and Conditions for DIDroom solutin (Dashboard, wallet, verifier, microservices, as well as all the subcomponents developed by Forkbomb B.V.)

Last Updated: [30.08.2024]

1. Introduction ​

Welcome to DIDroom Dashboard, part of the DIDroom Digital Identity solution, developed by Forkbomb B.V. These Terms and Conditions ("T&C") govern your use of the DIDroom Dashboard, DIDroom Wallet apps, and associated microservices (collectively, the "Services"). By using our Services, you agree to these T&C.

2. General Information ​

Purpose ​

DIDroom is a Digital Identity solution designed for credential issuance and verification, offering customizable options through a no-code approach. The Services include:

  • DIDroom Dashboard: Web app for managing digital identities.
  • DIDroom Wallet (Holder & Verifier): Mobile apps for storing, presenting, and verifying credentials.
  • Microservices: For credential issuance and verification, which may be hosted by users, third parties, or the solution vendor.

Eligibility ​

The Services are currently available without restrictions.

Account Registration ​

To use the DIDroom Dashboard or DIDroom Wallet apps, users must register an account using their email address.

3. User Roles and Responsibilities ​

User Roles ​

Users may take on different roles, such as holders, verifiers, or issuers, depending on how they utilize the Services. Users are responsible for their own use of the platform, and Forkbomb B.V. cannot be held liable for actions taken by users within these roles.

Prohibited Activities ​

Users are prohibited from engaging in illegal activities, unauthorized use of microservices, and any other activities deemed harmful or inappropriate by Forkbomb B.V.

Misuse ​

Forkbomb B.V. reserves the right to suspend or terminate accounts for any violations of these T&C, including misuse or illegal activities.

4. Open Source and Licensing ​

Open Source Contributions ​

DIDroom is an open-source solution licensed under AGPL 3.0. Users are encouraged to contribute to the project by submitting code or reporting issues on our GitHub repositories, including the main repo at DIDroom GitHub.

Rights and Obligations ​

All components of the DIDroom solution are licensed under AGPL 3.0, which grants users certain rights and imposes obligations related to the use, modification, and distribution of the software.

Modification Guidelines ​

DIDroom is designed with white-labeling in mind. All GUI components are sourced from an external dependency, available at DIDroom Components GitHub, and can be explored via the Storybook at Storybook for DIDroom Components.

5. Fees and Payments ​

Freemium Model ​

DIDroom offers a Freemium model. Details of the features included in the free version and those requiring payment can be found on our Pricing Page.

Payment Terms ​

For pricing details and payment terms, please refer to the Pricing Page.

Refund Policy ​

We offer a 30-day money-back guarantee, no questions asked, for any paid features or services.

6. Intellectual Property ​

IP Rights ​

Forkbomb B.V. holds all intellectual property rights to the DIDroom brand, content, and technology, excluding the open-source code licensed under AGPL 3.0.

User-Submitted Content ​

Users can upload Zenroom scripts and other non-private data to the platform. By doing so, they grant Forkbomb B.V. the right to reuse and publish this content after removing any personal information. Forkbomb B.V. will adhere strictly to GDPR and California privacy regulations for all personal data.

7. Liability and Disclaimers ​

No Warranty ​

There is no warranty provided for free users of the DIDroom solution. For paying users, our liability is limited to the extent permitted by law.

Third-Party Services ​

DIDroom integrates with third-party services via APIs and webhooks. Forkbomb B.V. is not responsible for how these integrations are used or misused by users or third parties.

User Responsibilities for Self-Hosted Services ​

Users who host their own microservices are responsible for the security and management of those services, including the creation and publication of cryptographic keys. Forkbomb B.V. disclaims any liability for the use or misuse of self-hosted services.

8. Termination of Services ​

Account Termination by Forkbomb B.V. ​

Forkbomb B.V. reserves the right to terminate or suspend user accounts in cases of violations, misuse, or inactivity.

Account Termination by Users ​

Users may terminate their accounts at any time by contacting support. Upon termination, all data hosted online by Forkbomb B.V. will be deleted. Data stored on users' mobile apps or self-hosted microservices will remain unaffected.

Data Retention After Termination ​

Credentials and data stored in the DIDroom Wallet apps will not be affected by account termination and will remain with the user.

9. Governing Law and Dispute Resolution ​

Governing Law ​

These T&C are governed by Dutch law.

Dispute Resolution ​

Any disputes will be resolved in the courts of Amsterdam.

10. Changes to the Terms ​

Notification of Changes ​

Users will be notified of any changes to these T&C via email.

Notice Period ​

Changes to the T&C will take effect 15 days after notification.

11. Contact Information ​

Support ​

For questions, support, or issues related to these T&C, please contact us at info@forkbomb.eu.

12. Miscellaneous ​

Force Majeure ​

Forkbomb B.V. is not liable for any delays or failures in performance resulting from events beyond our reasonable control, such as natural disasters, acts of war, or government actions.

Severability ​

If any provision of these T&C is found to be unenforceable, the remaining provisions will continue in full force and effect.

diff --git a/docs/pr-preview/pr-19/guides/7_terms-and-conditions/privacy-policy.html b/docs/pr-preview/pr-19/guides/7_terms-and-conditions/privacy-policy.html index 98b8300..632cba4 100644 --- a/docs/pr-preview/pr-19/guides/7_terms-and-conditions/privacy-policy.html +++ b/docs/pr-preview/pr-19/guides/7_terms-and-conditions/privacy-policy.html @@ -18,7 +18,7 @@ -
Skip to content

Privacy Policies ​

Please read below the privacy policies the DIDroom Wallet, DIDroom Wallet, and the DIDroom Control Room (Dashboard).

πŸ“±DIDroom Wallet πŸ“± ​

Last Updated: [30.08.2024]

1. Introduction ​

This Privacy Policy explains how Forkbomb B.V. ("we", "our", "us") collects, uses, and protects your personal data when you use the DIDroom Wallet mobile app ("the Wallet"). By using the Wallet, you agree to the collection and use of information in accordance with this policy.

2. Data Collection ​

Personal Data ​

The DIDroom Wallet app collects the following types of personal data:

  • Names
  • Credential Data
  • Organization Information: The organization the user is part of on the DIDroom Control Room (Dashboard).

Device Information ​

The Wallet app does not collect any device-related information, such as device IDs or location data.

Collection Methods ​

Data is collected through:

  • User Input: Information provided directly by the user.
  • Device Sensors: Information gathered through device sensors.
  • Interaction: Interaction with DIDroom Control Room (Dashboard) and DIDroom microservices, operated by Forkbomb B.V. or third parties.

3. Data Processing ​

Purposes of Data Processing ​

The collected data is used for the following purposes:

  • Credential Request
  • Credential Storage
  • Credential Presentation
  • Authentication
  • Personalization

Processing Locations ​

The data is processed locally on the device. However, the credential signature is verified by an external microservice called Relying Party, which may be operated by third parties or Forkbomb B.V.

4. Data Storage and Security ​

Data Storage ​

  • Secret Keys and Credentials: Stored locally on the device.
  • Email and Organization Data: Stored on the DIDroom Control Room (Dashboard), which is hosted in the Cloud based in Europe.

Security Measures ​

We implement the following security measures to protect your data:

  • End-to-End Encryption
  • TLS (Transport Layer Security) Communication
  • Asymmetric Signatures

5. User Rights ​

User Rights ​

Users have the following rights regarding their data:

  • Access: The right to access the data we hold about you.
  • Correction: The right to correct any inaccuracies in your data.
  • Deletion: The right to request the deletion of your data.

Exercising Rights ​

You can exercise these rights through:

  • In-App Options
  • Contacting Support

6. International Data Transfers ​

Data Transfers ​

The DIDroom Wallet app does not directly involve international data transfers. Any such transfers are handled within the application.

7. Cookies and Tracking ​

Cookies and Tracking ​

The DIDroom Wallet app uses cookies and tracking technologies for analytics. When presenting a credential the Wallet sends data the Relying Party. The Relying Party transfers some data to the DIDroom Verifier via Firebase, if the DIDroom Verifier is used as a mobile app. Firebase is not used if the DIDroom Verifier is deployed as a web app.

8. Updates to the Privacy Policy ​

Notification of Changes ​

Users will be notified of any changes to this Privacy Policy via email.

9. Contact Information ​

For any questions or concerns about this Privacy Policy, please contact us at:

Forkbomb B.V.
Haparandadam 7-A1
1013AK Amsterdam
Netherlands
Email: info@forkbomb.eu

Industry Standards ​

The DIDroom Wallet adheres to GDPR and California privacy laws.


πŸ“² DIDroom Verifier πŸ“² ​

Last Updated: [30.08.2024]

1. Introduction ​

This Privacy Policy explains how Forkbomb B.V. ("we", "our", "us") collects, uses, and protects your personal data when you use the DIDroom Verifier mobile app ("the Verifier"). By using the Verifier, you agree to the collection and use of information in accordance with this policy.

2. Data Collection ​

Personal Data ​

The DIDroom Verifier app receives the following personal data during the credential verification process:

  • Claims: Information disclosed from a credential held in the DIDroom Wallet. The Holder of the DIDroom Wallet consents to disclose these claims. The Verifier does not store these claims; only a log of the verification process is maintained.

Collection Methods ​

Data is collected through:

  • QR Code Scans
  • Direct Data Transfer: If the Verifier is deployed as a web application.

Device Information ​

The Verifier app does not collect any device-related information, such as device IDs or location data.

3. Data Processing ​

Purposes of Data Processing ​

The received personal data is used solely for:

  • Verification of Credentials

Processing Locations ​

Data is processed locally on the device. However, credential signatures are verified by an external microservice called Relying Party, which may be operated by third parties or by Forkbomb B.V.

4. Data Storage and Security ​

Data Storage ​

  • Personal Data: No personal data is stored by the Verifier.
  • Operator Data: Personal data of the person operating the Verifier is stored by the DIDroom Control Room (Dashboard).

Security Measures ​

We implement the following security measures to protect data:

  • TLS (Transport Layer Security)
  • Cryptographic Asymmetric Signatures

5. User Rights ​

User Rights ​

Users have the following rights regarding their data:

  • Access: The right to access the data we hold about you.
  • Correction: The right to correct any inaccuracies in your data.
  • Deletion: The right to request the deletion of your data.

Exercising Rights ​

These rights can be exercised through:

  • DIDroom Control Room (Dashboard)
  • Contacting Support

6. International Data Transfers ​

Data Transfers ​

The DIDroom Verifier app may involve international data transfers, which are handled directly within the app.

7. Cookies and Tracking ​

Cookies and Tracking ​

The DIDroom Verifier app itself does not use cookies or tracking technologies. However, it connects to Firebase for messages, which may include data sent by the Relying Party and originally by the DIDroom Wallet.

8. Updates to the Privacy Policy ​

Notification of Changes ​

Users will be notified of any changes to this Privacy Policy via email.

9. Contact Information ​

For any questions or concerns about this Privacy Policy, please contact us at:

Forkbomb B.V.
Haparandadam 7-A1
1013AK Amsterdam
Netherlands
Email: info@forkbomb.eu

Industry Standards ​

The DIDroom Wallet adheres to GDPR and California privacy laws.


πŸ’» DIDroom Control Room (Dashboard) πŸ’» ​

Last Updated: [30.08.2024]

1. Introduction ​

This Privacy Policy explains how Forkbomb B.V. ("we", "our", "us") collects, uses, and protects your personal data when you use the DIDroom Control Room (Dashboard) ("the Dashboard"). By using the Dashboard, you agree to the collection and use of information in accordance with this policy.

2. Data Collection ​

Personal Data ​

The DIDroom Control Room (Dashboard) collects the following types of personal data:

  • Email Addresses
  • IP Addresses
  • Billing Information

Data Collection Methods ​

Data is collected through:

  • User Input: Information provided directly by the user.
  • Invitations: Users may invite others via email to join the Dashboard.

Third-Party Data Collection ​

The DIDroom Control Room (Dashboard) does not collect data from third parties.

3. Data Processing ​

Purposes of Data Processing ​

The collected data is used for the following purposes:

  • Account Creation
  • Personalization

Automated Decision-Making ​

The DIDroom Control Room (Dashboard) does not use data for automated decision-making or profiling.

Data Sharing ​

No data is shared with third parties.

4. Data Storage and Security ​

Data Storage Locations ​

Data is stored in cloud services based in Europe.

Data Retention ​

Data is retained until the user deletes their account.

Security Measures ​

We implement the following security measures to protect your data:

  • Encryption
  • Access Controls

5. User Rights ​

User Rights ​

Users have the following rights regarding their data:

  • Access: The right to access the data we hold about you.
  • Rectification: The right to correct any inaccuracies in your data.
  • Deletion: The right to request the deletion of your data.

Exercising Your Rights ​

You can exercise these rights through the Dashboard or by contacting our support team.

Identity Verification ​

Currently, there is no identity verification process, but we plan to implement KYC (Know Your Customer) in the future.

6. Cookies and Tracking ​

Cookies and Analytics ​

The DIDroom Control Room (Dashboard) uses cookies and tracking technologies for analytics. We use Matomo, which is deployed on an on-premises server.

Managing Cookies ​

Users can manage or opt out of cookies through the "no-follow" option in their browser settings.

7. International Data Transfers ​

Data Transfers ​

No user data is transferred internationally.

8. Minors ​

Age Restrictions ​

The DIDroom Control Room (Dashboard) is not intended for use by children due to its complexity.

We do not obtain parental consent for minors' data collection.

9. Updates to the Privacy Policy ​

Notification of Changes ​

Users will be notified of any changes to this Privacy Policy via email.

10. Contact Information ​

For any questions or concerns about this Privacy Policy, please contact us at:

Forkbomb B.V.
Haparandadam 7-A1
1013AK Amsterdam
Netherlands
Email: info@forkbomb.eu

Industry Standards ​

The DIDroom Control Room (Dashboard) adheres to GDPR and California privacy laws.

+
Skip to content

Privacy Policies ​

Please read below the privacy policies the DIDroom Wallet, DIDroom Wallet, and the DIDroom Dashboard (Dashboard).

πŸ“±DIDroom Wallet πŸ“± ​

Last Updated: [30.08.2024]

1. Introduction ​

This Privacy Policy explains how Forkbomb B.V. ("we", "our", "us") collects, uses, and protects your personal data when you use the DIDroom Wallet mobile app ("the Wallet"). By using the Wallet, you agree to the collection and use of information in accordance with this policy.

2. Data Collection ​

Personal Data ​

The DIDroom Wallet app collects the following types of personal data:

  • Names
  • Credential Data
  • Organization Information: The organization the user is part of on the DIDroom Dashboard (Dashboard).

Device Information ​

The Wallet app does not collect any device-related information, such as device IDs or location data.

Collection Methods ​

Data is collected through:

  • User Input: Information provided directly by the user.
  • Device Sensors: Information gathered through device sensors.
  • Interaction: Interaction with DIDroom Dashboard (Dashboard) and DIDroom microservices, operated by Forkbomb B.V. or third parties.

3. Data Processing ​

Purposes of Data Processing ​

The collected data is used for the following purposes:

  • Credential Request
  • Credential Storage
  • Credential Presentation
  • Authentication
  • Personalization

Processing Locations ​

The data is processed locally on the device. However, the credential signature is verified by an external microservice called Relying Party, which may be operated by third parties or Forkbomb B.V.

4. Data Storage and Security ​

Data Storage ​

  • Secret Keys and Credentials: Stored locally on the device.
  • Email and Organization Data: Stored on the DIDroom Dashboard (Dashboard), which is hosted in the Cloud based in Europe.

Security Measures ​

We implement the following security measures to protect your data:

  • End-to-End Encryption
  • TLS (Transport Layer Security) Communication
  • Asymmetric Signatures

5. User Rights ​

User Rights ​

Users have the following rights regarding their data:

  • Access: The right to access the data we hold about you.
  • Correction: The right to correct any inaccuracies in your data.
  • Deletion: The right to request the deletion of your data.

Exercising Rights ​

You can exercise these rights through:

  • In-App Options
  • Contacting Support

6. International Data Transfers ​

Data Transfers ​

The DIDroom Wallet app does not directly involve international data transfers. Any such transfers are handled within the application.

7. Cookies and Tracking ​

Cookies and Tracking ​

The DIDroom Wallet app uses cookies and tracking technologies for analytics. When presenting a credential the Wallet sends data the Relying Party. The Relying Party transfers some data to the DIDroom Verifier via Firebase, if the DIDroom Verifier is used as a mobile app. Firebase is not used if the DIDroom Verifier is deployed as a web app.

8. Updates to the Privacy Policy ​

Notification of Changes ​

Users will be notified of any changes to this Privacy Policy via email.

9. Contact Information ​

For any questions or concerns about this Privacy Policy, please contact us at:

Forkbomb B.V.
Haparandadam 7-A1
1013AK Amsterdam
Netherlands
Email: info@forkbomb.eu

Industry Standards ​

The DIDroom Wallet adheres to GDPR and California privacy laws.


πŸ“² DIDroom Verifier πŸ“² ​

Last Updated: [30.08.2024]

1. Introduction ​

This Privacy Policy explains how Forkbomb B.V. ("we", "our", "us") collects, uses, and protects your personal data when you use the DIDroom Verifier mobile app ("the Verifier"). By using the Verifier, you agree to the collection and use of information in accordance with this policy.

2. Data Collection ​

Personal Data ​

The DIDroom Verifier app receives the following personal data during the credential verification process:

  • Claims: Information disclosed from a credential held in the DIDroom Wallet. The Holder of the DIDroom Wallet consents to disclose these claims. The Verifier does not store these claims; only a log of the verification process is maintained.

Collection Methods ​

Data is collected through:

  • QR Code Scans
  • Direct Data Transfer: If the Verifier is deployed as a web application.

Device Information ​

The Verifier app does not collect any device-related information, such as device IDs or location data.

3. Data Processing ​

Purposes of Data Processing ​

The received personal data is used solely for:

  • Verification of Credentials

Processing Locations ​

Data is processed locally on the device. However, credential signatures are verified by an external microservice called Relying Party, which may be operated by third parties or by Forkbomb B.V.

4. Data Storage and Security ​

Data Storage ​

  • Personal Data: No personal data is stored by the Verifier.
  • Operator Data: Personal data of the person operating the Verifier is stored by the DIDroom Dashboard (Dashboard).

Security Measures ​

We implement the following security measures to protect data:

  • TLS (Transport Layer Security)
  • Cryptographic Asymmetric Signatures

5. User Rights ​

User Rights ​

Users have the following rights regarding their data:

  • Access: The right to access the data we hold about you.
  • Correction: The right to correct any inaccuracies in your data.
  • Deletion: The right to request the deletion of your data.

Exercising Rights ​

These rights can be exercised through:

  • DIDroom Dashboard (Dashboard)
  • Contacting Support

6. International Data Transfers ​

Data Transfers ​

The DIDroom Verifier app may involve international data transfers, which are handled directly within the app.

7. Cookies and Tracking ​

Cookies and Tracking ​

The DIDroom Verifier app itself does not use cookies or tracking technologies. However, it connects to Firebase for messages, which may include data sent by the Relying Party and originally by the DIDroom Wallet.

8. Updates to the Privacy Policy ​

Notification of Changes ​

Users will be notified of any changes to this Privacy Policy via email.

9. Contact Information ​

For any questions or concerns about this Privacy Policy, please contact us at:

Forkbomb B.V.
Haparandadam 7-A1
1013AK Amsterdam
Netherlands
Email: info@forkbomb.eu

Industry Standards ​

The DIDroom Wallet adheres to GDPR and California privacy laws.


πŸ’» DIDroom Dashboard (Dashboard) πŸ’» ​

Last Updated: [30.08.2024]

1. Introduction ​

This Privacy Policy explains how Forkbomb B.V. ("we", "our", "us") collects, uses, and protects your personal data when you use the DIDroom Dashboard (Dashboard) ("the Dashboard"). By using the Dashboard, you agree to the collection and use of information in accordance with this policy.

2. Data Collection ​

Personal Data ​

The DIDroom Dashboard (Dashboard) collects the following types of personal data:

  • Email Addresses
  • IP Addresses
  • Billing Information

Data Collection Methods ​

Data is collected through:

  • User Input: Information provided directly by the user.
  • Invitations: Users may invite others via email to join the Dashboard.

Third-Party Data Collection ​

The DIDroom Dashboard (Dashboard) does not collect data from third parties.

3. Data Processing ​

Purposes of Data Processing ​

The collected data is used for the following purposes:

  • Account Creation
  • Personalization

Automated Decision-Making ​

The DIDroom Dashboard (Dashboard) does not use data for automated decision-making or profiling.

Data Sharing ​

No data is shared with third parties.

4. Data Storage and Security ​

Data Storage Locations ​

Data is stored in cloud services based in Europe.

Data Retention ​

Data is retained until the user deletes their account.

Security Measures ​

We implement the following security measures to protect your data:

  • Encryption
  • Access Controls

5. User Rights ​

User Rights ​

Users have the following rights regarding their data:

  • Access: The right to access the data we hold about you.
  • Rectification: The right to correct any inaccuracies in your data.
  • Deletion: The right to request the deletion of your data.

Exercising Your Rights ​

You can exercise these rights through the Dashboard or by contacting our support team.

Identity Verification ​

Currently, there is no identity verification process, but we plan to implement KYC (Know Your Customer) in the future.

6. Cookies and Tracking ​

Cookies and Analytics ​

The DIDroom Dashboard (Dashboard) uses cookies and tracking technologies for analytics. We use Matomo, which is deployed on an on-premises server.

Managing Cookies ​

Users can manage or opt out of cookies through the "no-follow" option in their browser settings.

7. International Data Transfers ​

Data Transfers ​

No user data is transferred internationally.

8. Minors ​

Age Restrictions ​

The DIDroom Dashboard (Dashboard) is not intended for use by children due to its complexity.

We do not obtain parental consent for minors' data collection.

9. Updates to the Privacy Policy ​

Notification of Changes ​

Users will be notified of any changes to this Privacy Policy via email.

10. Contact Information ​

For any questions or concerns about this Privacy Policy, please contact us at:

Forkbomb B.V.
Haparandadam 7-A1
1013AK Amsterdam
Netherlands
Email: info@forkbomb.eu

Industry Standards ​

The DIDroom Dashboard (Dashboard) adheres to GDPR and California privacy laws.

diff --git a/docs/pr-preview/pr-19/guides/8_Acknowledgements/index.html b/docs/pr-preview/pr-19/guides/8_Acknowledgements/index.html index ad0f030..3b423ec 100644 --- a/docs/pr-preview/pr-19/guides/8_Acknowledgements/index.html +++ b/docs/pr-preview/pr-19/guides/8_Acknowledgements/index.html @@ -18,7 +18,7 @@ -
Skip to content

🫢🏻 Acknowledgements ​

NGI Trustchain ​

Supported by NGI TRUSTCHAIN, which is made possible with financial support from the European Commission's Next Generation Internet programme.

Trustchain

NGI Assure ​

Supported by NGI ASSURE, operated by the NLNet foundation, which is made possible with financial support from the European Commission's Next Generation Internet programme.

Trustchain

+
Skip to content

🫢🏻 Acknowledgements ​

NGI Trustchain ​

Supported by NGI TRUSTCHAIN, which is made possible with financial support from the European Commission's Next Generation Internet programme.

Trustchain

NGI Assure ​

Supported by NGI ASSURE, operated by the NLNet foundation, which is made possible with financial support from the European Commission's Next Generation Internet programme.

Trustchain

diff --git a/docs/pr-preview/pr-19/guides/9_pricing/index.html b/docs/pr-preview/pr-19/guides/9_pricing/index.html index b1263e9..e3ced7f 100644 --- a/docs/pr-preview/pr-19/guides/9_pricing/index.html +++ b/docs/pr-preview/pr-19/guides/9_pricing/index.html @@ -18,7 +18,7 @@ -
Skip to content

πŸ«±πŸ½β€πŸ«²πŸΏ Pricing πŸ«±πŸΎβ€πŸ«²πŸΌ ​

Pricing Tables ​

Our pricing table. For a quick description of the different items, see below.

FreeProEnterprise
Organizations11Unlimited
Issuance flows15Unlimited
Verification flows15Unlimited
Public credentialsNoNoYes
Microservices DeploymentManualManual, AutoManual, Auto, CI
Control RoomSaaSSaaSSaaS, on premises
Admin DashboardNoNoOn premises
Credential customization SupportNoGithubTraining, Support, Customization
White labelingNoNoYes
W3C-DID serviceSaaSSaaSSaaS, on premises, customizable
PriceFree!99 €/monthCall Sales

Feature description ​

Below a description of the individual features.

Organizations ​

  • Description: an Organization contains users, Credential Issuance and Verification, and Microservices setup.
  • Info: create Organization

Issuance flows and Verification flows ​

  • Description: Credential Issuance and Verification flows define what a Credential contains, how it is issued and how it is verified. Issuance and Verification are operated by Microservices.
  • Info: Create an Issuance Flow and Create a Verification Flow

Microservices Deployment ​

  • Description: Microservices operate Credential Issuance and Verification. The Wallet and Verifier apps exchange information with the Microservices.
  • Info: Deploy Microservices

Control Room ​

  • Description: the DIDroom Control Room is the main web application to setup Organizations, users, Credential Issuance and Verification Flows and Microservices.
  • Info: DIDroom Control Room

Admin Dashboard ​

Public credentials ​

  • Description: this feature allows you to have your credential Issuance flow visible by anyone who installs the DIDroom Wallet and Verifier app. The Wallet users can request the credentials by clicking on the credential from the Wallet's home.

Credential customization Support ​

  • Description: the Credential Authorization, Issuance and Verification, can be customised, for example to read the credential's data from an external database or to perform Authorization on a 3rd party service. Customization is implemented on our Online IDE Apiroom using Zenroom and Slangroom.
  • Info: we offer custom development and training for the customization

White labeling ​

W3C-DID service ​

  • Description: DIDroom uses Dyne.org's W3C-DID implementation and service.
  • Info: we offer support for deployment and custom development of W3C-DID services.
+
Skip to content

πŸ«±πŸ½β€πŸ«²πŸΏ Pricing πŸ«±πŸΎβ€πŸ«²πŸΌ ​

Pricing Tables ​

Our pricing table. For a quick description of the different items, see below.

FreeProEnterprise
Organizations11Unlimited
Issuance flows15Unlimited
Verification flows15Unlimited
Public credentialsNoNoYes
Microservices DeploymentManualManual, AutoManual, Auto, CI
Control RoomSaaSSaaSSaaS, on premises
Admin DashboardNoNoOn premises
Credential customization SupportNoGithubTraining, Support, Customization
White labelingNoNoYes
W3C-DID serviceSaaSSaaSSaaS, on premises, customizable
PriceFree!99 €/monthCall Sales

Feature description ​

Below a description of the individual features.

Organizations ​

  • Description: an Organization contains users, Credential Issuance and Verification, and Microservices setup.
  • Info: create Organization

Issuance flows and Verification flows ​

  • Description: Credential Issuance and Verification flows define what a Credential contains, how it is issued and how it is verified. Issuance and Verification are operated by Microservices.
  • Info: Create an Issuance Flow and Create a Verification Flow

Microservices Deployment ​

  • Description: Microservices operate Credential Issuance and Verification. The Wallet and Verifier apps exchange information with the Microservices.
  • Info: Deploy Microservices

Control Room ​

  • Description: the DIDroom Dashboard is the main web application to setup Organizations, users, Credential Issuance and Verification Flows and Microservices.
  • Info: DIDroom Dashboard

Admin Dashboard ​

Public credentials ​

  • Description: this feature allows you to have your credential Issuance flow visible by anyone who installs the DIDroom Wallet and Verifier app. The Wallet users can request the credentials by clicking on the credential from the Wallet's home.

Credential customization Support ​

  • Description: the Credential Authorization, Issuance and Verification, can be customised, for example to read the credential's data from an external database or to perform Authorization on a 3rd party service. Customization is implemented on our Online IDE Apiroom using Zenroom and Slangroom.
  • Info: we offer custom development and training for the customization

White labeling ​

W3C-DID service ​

  • Description: DIDroom uses Dyne.org's W3C-DID implementation and service.
  • Info: we offer support for deployment and custom development of W3C-DID services.
diff --git a/docs/pr-preview/pr-19/guides/index.html b/docs/pr-preview/pr-19/guides/index.html index 2e3863d..aed2568 100644 --- a/docs/pr-preview/pr-19/guides/index.html +++ b/docs/pr-preview/pr-19/guides/index.html @@ -18,7 +18,7 @@ - + diff --git a/docs/pr-preview/pr-19/intro.html b/docs/pr-preview/pr-19/intro.html index f34e69e..f962ec6 100644 --- a/docs/pr-preview/pr-19/intro.html +++ b/docs/pr-preview/pr-19/intro.html @@ -19,7 +19,7 @@ -
Skip to content

πŸ“– Introduction ​

Welcome to Didroom – your gateway to decentralized identity management and secure communication. Didroom empowers individuals and organizations to take control of their digital identities while ensuring privacy and security. Whether you're looking to streamline identity verification processes, enhance data security, or enable secure communication channels, Didroom provides the tools and infrastructure you need.

You can quickly test, plug and deploy by using our service at dashboard.didroom.com or install the whole ecosystem on-premise on your infrastructure. For detailed instructions please refer to the Get started guide.

Watch our intro video ​

How It Works ​

Didroom offers a seamless and intuitive experience for managing decentralized identities and secure communication. Here's how it works:

  • Define services and credentials: Via the Didroom Control Room, users can define services, credentials, and claims services according to their specific requirements.

  • Generate Openid4VCI microservices: Users can generate Openid4VCI microservices directly from the bloom using the Control Room, simplifying the process of creating and deploying identity verification services.

  • Plug custom business logic: Didroom allows users to add custom business logic to their applications, tailoring the functionality to meet their unique needs and requirements.

  • Integrate pre-existing microservices: Users can seamlessly integrate their microservices into their existing systems or applications, enhancing functionality and interoperability.

  • Deploy and control microservices nodes: Didroom enables users to deploy and control microservices nodes directly from the Control Room, streamlining the deployment and management process.

  • Enhance your business logic with natural language smart contracts (Zencode): With Didroom, users can enhance their business logic with natural English smart contracts, enabling advanced automation and decision-making capabilities.

  • Whitelabel wallet and verifier apps: To interact with your services individuals need a wallet app that we provide for whitelabeling. Same a verifier app for indivisuals that want to verify credentials.

Features ​

  • Compliance: Didroom is compliant with industry standards and regulations, including EUDI-ARF, ensuring adherence to data protection laws and regulations.
  • End-to-End encryption: Secure communication is facilitated through end-to-end encryption, ensuring that messages and data remain private and confidential.
  • Decentralized identity management: Didroom enables users to create, control, and manage their digital identities in a decentralized manner, eliminating reliance on central authorities.
  • Customizable and extensible: Didroom is highly customizable and extensible, allowing organizations to tailor the platform to their specific needs and integrate with existing systems seamlessly.

Integration and flexibility ​

Didroom is designed to be seamlessly integrated into third-party solutions and environments. Its modular architecture allows for easy integration with existing microservices or other identity management systems. Whether you need to use Didroom as a standalone solution or integrate it into your existing infrastructure, Didroom provides the flexibility and adaptability you need.

Architectural overview ​

The Didroom ecosystem consists of a modular architecture comprising core technologies and components

  1. Zenroom
  2. Slangroom
  3. No-code-room
  4. Dyne.org Decentralized Identifiers (DID) Service

these provide the foundational elements for identity management and cryptographic operations.

  • Components:

πŸ“‘

For detailed description of each component please refer to πŸ’‘ The Solution

  1. Didroom Control Room / Dashboard
  2. Didroom Microservices
  3. Wallet Holder App
  4. Verifier App

there offer user interfaces and functionalities for managing identities, communication, and verification.

Let's start! ​

Sure, let's 🏁 Get started!

+
Skip to content

πŸ“– Introduction ​

Welcome to Didroom – your gateway to decentralized identity management and secure communication. Didroom empowers individuals and organizations to take control of their digital identities while ensuring privacy and security. Whether you're looking to streamline identity verification processes, enhance data security, or enable secure communication channels, Didroom provides the tools and infrastructure you need.

You can quickly test, plug and deploy by using our service at dashboard.didroom.com or install the whole ecosystem on-premise on your infrastructure. For detailed instructions please refer to the Get started guide.

Watch our intro video ​

How It Works ​

Didroom offers a seamless and intuitive experience for managing decentralized identities and secure communication. Here's how it works:

  • Define services and credentials: Via the DIDroom Dashboard, users can define services, credentials, and claims services according to their specific requirements.

  • Generate Openid4VCI microservices: Users can generate Openid4VCI microservices directly from the bloom using the Control Room, simplifying the process of creating and deploying identity verification services.

  • Plug custom business logic: Didroom allows users to add custom business logic to their applications, tailoring the functionality to meet their unique needs and requirements.

  • Integrate pre-existing microservices: Users can seamlessly integrate their microservices into their existing systems or applications, enhancing functionality and interoperability.

  • Deploy and control microservices nodes: Didroom enables users to deploy and control microservices nodes directly from the Control Room, streamlining the deployment and management process.

  • Enhance your business logic with natural language smart contracts (Zencode): With Didroom, users can enhance their business logic with natural English smart contracts, enabling advanced automation and decision-making capabilities.

  • Whitelabel wallet and verifier apps: To interact with your services individuals need a wallet app that we provide for whitelabeling. Same a verifier app for indivisuals that want to verify credentials.

Features ​

  • Compliance: Didroom is compliant with industry standards and regulations, including EUDI-ARF, ensuring adherence to data protection laws and regulations.
  • End-to-End encryption: Secure communication is facilitated through end-to-end encryption, ensuring that messages and data remain private and confidential.
  • Decentralized identity management: Didroom enables users to create, control, and manage their digital identities in a decentralized manner, eliminating reliance on central authorities.
  • Customizable and extensible: Didroom is highly customizable and extensible, allowing organizations to tailor the platform to their specific needs and integrate with existing systems seamlessly.

Integration and flexibility ​

Didroom is designed to be seamlessly integrated into third-party solutions and environments. Its modular architecture allows for easy integration with existing microservices or other identity management systems. Whether you need to use Didroom as a standalone solution or integrate it into your existing infrastructure, Didroom provides the flexibility and adaptability you need.

Architectural overview ​

The Didroom ecosystem consists of a modular architecture comprising core technologies and components

  1. Zenroom
  2. Slangroom
  3. No-code-room
  4. Dyne.org Decentralized Identifiers (DID) Service

these provide the foundational elements for identity management and cryptographic operations.

  • Components:

πŸ“‘

For detailed description of each component please refer to πŸ’‘ The Solution

  1. DIDroom Dashboard / Dashboard
  2. Didroom Microservices
  3. Wallet Holder App
  4. Verifier App

there offer user interfaces and functionalities for managing identities, communication, and verification.

Let's start! ​

Sure, let's 🏁 Get started!

diff --git a/docs/pr-preview/pr-19/solution.html b/docs/pr-preview/pr-19/solution.html index 1530daf..7989ea4 100644 --- a/docs/pr-preview/pr-19/solution.html +++ b/docs/pr-preview/pr-19/solution.html @@ -18,7 +18,7 @@ -
Skip to content

πŸ’‘ The Solution ​

Our solution is divided into different repositories, each focusing on a specific component. This modular approach allows us to maintain flexibility and scalability, enabling users to customize and integrate the solution according to their specific needs and requirements.

DIDroom Control Room (Dashboard) ​

The DIDroom Control Room/Dashboard serves as the central hub for managing decentralized identity solutions. It provides a user-friendly interface for configuring settings, monitoring performance, and accessing key functionalities.

The core features of the Control Room are:

  • Creation of credential issuance and verification flows
  • Deployment and provisioning of the DIDroom Microservices
  • Creation of organizations, assigning of privileges to different users
  • The admin panel of the Control Room offers:
    • User management
    • Setup of web-hooks and automation flows
    • Customization of the Control Room menu entries

DIDroom Mobile libs (Mobile Zencode) ​

A collection of mobile library, Zencode Mobile holds all the business logic and contracts shared between the different components of the DIDroom Solution. It serves as a centralized repository for managing and updating the core business logic used across various mobile applications and components.

RESOURCES

GitHub

DIDroom microservices ​

Those are the technological core of the solution: those components offer cryptographic functions as well as transport protocols. The microservices are completely isolated from the Dashboard, meaning that:

  • The code is hosted in a separated repo
  • The microservices can run independently from the Dashboard
  • Each microservice has its own secret keys and DID to identify them: those are generated by the microservice at its first provisioning

DIDroom microservices are generated using No-code-room (NCR) and utilize the Zencode Mobile repository to create three different microservices:

  • Credential Issuers: These microservices are compliant with Openid4VCI standards and handle the issuance of credentials.
  • Authorization Servers: These microservices implement OAuth2 and work seamlessly with our DID Service for authentication and authorization.
  • Relying Party: These microservices are compliant with Openid4VP standards and act as relying parties for authentication and authorization.

RESOURCES

GitHub

Wallet Holder App ​

The Wallet Holder App offers a secure and user-friendly interface for managing decentralized identities and digital credentials. It allows users to store, view, and share their identity information with ease inside a TEE (Trusted execution environment) directly on citizens devices.

Verifier App ​

The Verifier App provides tools for verifying the authenticity and validity of decentralized identities and digital credentials. It enables organizations to validate identity claims and ensure compliance with regulatory requirements.

DIDroom web components ​

DIDroom Web Components hold all the UI web components used across all the projects to ensure a coherent Atomic design and allow for white-labeling.

+
Skip to content

πŸ’‘ The Solution ​

Our solution is divided into different repositories, each focusing on a specific component. This modular approach allows us to maintain flexibility and scalability, enabling users to customize and integrate the solution according to their specific needs and requirements.

DIDroom Dashboard (Dashboard) ​

The DIDroom Dashboard/Dashboard serves as the central hub for managing decentralized identity solutions. It provides a user-friendly interface for configuring settings, monitoring performance, and accessing key functionalities.

The core features of the Control Room are:

  • Creation of credential issuance and verification flows
  • Deployment and provisioning of the DIDroom Microservices
  • Creation of organizations, assigning of privileges to different users
  • The admin panel of the Control Room offers:
    • User management
    • Setup of web-hooks and automation flows
    • Customization of the Control Room menu entries

DIDroom Mobile libs (Mobile Zencode) ​

A collection of mobile library, Zencode Mobile holds all the business logic and contracts shared between the different components of the DIDroom Solution. It serves as a centralized repository for managing and updating the core business logic used across various mobile applications and components.

RESOURCES

GitHub

DIDroom microservices ​

Those are the technological core of the solution: those components offer cryptographic functions as well as transport protocols. The microservices are completely isolated from the Dashboard, meaning that:

  • The code is hosted in a separated repo
  • The microservices can run independently from the Dashboard
  • Each microservice has its own secret keys and DID to identify them: those are generated by the microservice at its first provisioning

DIDroom microservices are generated using No-code-room (NCR) and utilize the Zencode Mobile repository to create three different microservices:

  • Credential Issuers: These microservices are compliant with Openid4VCI standards and handle the issuance of credentials.
  • Authorization Servers: These microservices implement OAuth2 and work seamlessly with our DID Service for authentication and authorization.
  • Relying Party: These microservices are compliant with Openid4VP standards and act as relying parties for authentication and authorization.

RESOURCES

GitHub

Wallet Holder App ​

The Wallet Holder App offers a secure and user-friendly interface for managing decentralized identities and digital credentials. It allows users to store, view, and share their identity information with ease inside a TEE (Trusted execution environment) directly on citizens devices.

Verifier App ​

The Verifier App provides tools for verifying the authenticity and validity of decentralized identities and digital credentials. It enables organizations to validate identity claims and ensure compliance with regulatory requirements.

DIDroom web components ​

DIDroom Web Components hold all the UI web components used across all the projects to ensure a coherent Atomic design and allow for white-labeling.

diff --git a/docs/solution.md b/docs/solution.md index 4c9506c..32f837a 100644 --- a/docs/solution.md +++ b/docs/solution.md @@ -1,10 +1,15 @@ +--- +title: πŸ’‘ The Solution +order: 30 +--- + # πŸ’‘ The Solution Our solution is divided into different repositories, each focusing on a specific component. This modular approach allows us to maintain flexibility and scalability, enabling users to customize and integrate the solution according to their specific needs and requirements. -## DIDroom Control Room (Dashboard) +## DIDroom Dashboard (Dashboard) -The DIDroom Control Room/Dashboard serves as the central hub for managing decentralized identity solutions. It provides a user-friendly interface for configuring settings, monitoring performance, and accessing key functionalities. +The DIDroom Dashboard/Dashboard serves as the central hub for managing decentralized identity solutions. It provides a user-friendly interface for configuring settings, monitoring performance, and accessing key functionalities. The core features of the Control Room are: From fd5e10324eb5c8e88a51912677609189d9889294 Mon Sep 17 00:00:00 2001 From: andrea-tabbles Date: Tue, 10 Dec 2024 11:50:11 +0100 Subject: [PATCH 3/8] chore: fix broken links (1) --- docs/get_started.md | 30 +++++++++---------- docs/guides/Pricing/index.md | 10 +++---- docs/guides/Signature/signatures.md | 18 +++++++++++ docs/guides/Sysadmin/setup.md | 2 +- docs/guides/Wallet/sign-up.md | 2 +- docs/pr-preview/pr-14/404.html | 2 +- docs/pr-preview/pr-14/aknowledgements.html | 2 +- .../pr-14/assets/chunks/metadata.b29d1707.js | 2 +- 8 files changed, 43 insertions(+), 25 deletions(-) create mode 100755 docs/guides/Signature/signatures.md diff --git a/docs/get_started.md b/docs/get_started.md index 150222d..f4bf935 100644 --- a/docs/get_started.md +++ b/docs/get_started.md @@ -35,39 +35,39 @@ Below, you'll find detailed descriptions of each guide, carefully curated to emp > [!CAUTION] System administrators > For folks that wants to deploy and manage the infrastructure that powers Didroom. > -> - [Setup an instance](/guides/4_sysadmin/setup) -> - [Self host the dashboard](/guides/4_sysadmin/setup_dashboard) -> - [Deploy microservices](/guides/4_sysadmin/deploy_microservices.md) +> - [Setup an instance](/guides/Sysadmin/setup) +> - [Self host the dashboard](/guides/Sysadmin/setup_dashboard) +> - [Deploy microservices](/guides/Sysadmin/deploy_microservices.md) > [!IMPORTANT] Organization administrators > For folks that wants to oversee the configuration and management of decentralized identity solutions within their organizations. Here you'll find instructions on how to use the Dashboard to configure settings, monitor your issuance flows, and access key functionalities. > -> - [Setup a credential issuer](/guides/1_orgadmin/credential_issuer.md) -> - [Setup an authorization server](/guides/1_orgadmin/auth_server.md) -> - [Create issuance flows](/guides/1_orgadmin/issuance_flow.md) +> - [Setup a credential issuer](/guides/Orgadmin/credential_issuer.md) +> - [Setup an authorization server](/guides/Orgadmin/auth_server.md) +> - [Create issuance flows](/guides/Orgadmin/issuance_flow.md) > - [Create verification flows](/guides/404) > - [Generate microservices from the dashboard](/guides/404) > - [Add custom business logic for credential issuing](/guides/404) > - [Add custom business logic for authorization](/guides/404) -> - [Create an organization](/guides/1_orgadmin/create.md) +> - [Create an organization](/guides/Orgadmin/create.md) > [!WARNING] Wallet holders > > For individuals that wants to use the Wallet Holder App to manage their decentralized identities and digital credentials securely. Here we walks you through the process of installing and using the Wallet Holder App to store, view, and share identity information with ease. > -> - [Create an identity / keyring](/guides/2_wallet/1_register.md) -> - [Request a credential](/guides/2_wallet/3_get_credential.md) -> - [Present a credential](/guides/2_wallet/4_present_credential.md) -> - [Get part to an organization](/guides/2_wallet/2_join_org.md) -> - [Define preferences](/guides/2_wallet/5_preferences.md) +> - [Create an identity / keyring](/guides/Wallet/register.md) +> - [Request a credential](/guides/Wallet/get_credential.md) +> - [Present a credential](/guides/Wallet/present_credential.md) +> - [Get part to an organization](/guides/Wallet/join_org.md) +> - [Define preferences](/guides/Wallet/preferences.md) > [!TIP] Verifiers > > For individuals that wants to utilize the Verifier App to verify the authenticity and validity of decentralized identities and digital credentials. Here we outlines how to install and use the Verifier App to validate identity claims and ensure compliance with regulatory requirements. > -> - [Get part of an organization](/guides/3_verifier/1_join_org.md) -> - [Select a verification flow](/guides/3_verifier/2_verification_flow.md) -> - [Verify a credential](/guides/3_verifier/3_verify.md) +> - [Get part of an organization](/guides/Verifier/join_org.md) +> - [Select a verification flow](/guides/Verifier/verification_flow.md) +> - [Verify a credential](/guides/Verifier/verify.md)