diff --git a/examples/canvas/cert/ca.crt b/examples/canvas/cert/ca.crt new file mode 100644 index 000000000..55b3deead --- /dev/null +++ b/examples/canvas/cert/ca.crt @@ -0,0 +1,21 @@ +-----BEGIN CERTIFICATE----- +MIIDXjCCAkagAwIBAgIFOTE5ODgwDQYJKoZIhvcNAQELBQAwXjEQMA4GA1UEAxMH +VGVzdCBDQTELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNV +BAcTDVNhbiBGcmFuY2lzY28xEDAOBgNVBAoTB1Rlc3QgQ0EwHhcNMjQwNjIxMDMw +OTI0WhcNMjUwNjIxMDMwOTI0WjBeMRAwDgYDVQQDEwdUZXN0IENBMQswCQYDVQQG +EwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZyYW5jaXNj +bzEQMA4GA1UEChMHVGVzdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +ggEBAIrgwNArf/Ahiz1NDRvuZB3kcpU3vke/E5anfzvy/O24eMvIhb1YIyMNCj58 +UdQWFvfn4Bz17rYdABnlvLYRmj9GnpAXWRweC4AQBT6vnB8njagp5NTDv24kyWUB +NXz/Kh0xkvgFjwvS8RQmi7mW/ot+94g/vHu55I8n15EU/OZSmOpxDaZZQwZTZCic +et17DLXfeYpgx4L1cBnq0dkOyZwdJ3sMl7NPqSGr12fkjatFqXDleJrU4DFdddBs ++NdaWRsZ2VqEVb/gFViABSlKSkHAqfRjL/t3d1VmgqMbXE/OsNNCYS07Lg5TZX38 +BRkexBuNfGEZIEYjUG5k09yvueECAwEAAaMjMCEwDwYDVR0TAQH/BAUwAwEB/zAO +BgNVHQ8BAf8EBAMCAgQwDQYJKoZIhvcNAQELBQADggEBAE0uZdl7ty3Eqk2m8+iJ +g3ojs9af0QOtnl/z8K3jhtBuuT7gtIx5ixzz9QffuI78XCOgvNxBXhAdT3VPz0mx +8rSP1gBNTJmPGyr3sciodNXO4k/jtOLKlkfqTk6JHAJsqa+4WG8JKrX3+z0wJ8gi +X4ojzh+dzXzt2B1pRdzzOOWnquO2jVjcQfW5SpGQYRNu17AyezZYrenActkX7ZFO +1oojAQukvxQZ+TMHxWuIJT5Rs6bartR9Dw1JqjP1/vzfh4u9fWUPZ+xFWrEVTvDk +HeVpFtpzg7PPDGl1axeRXlV5qc9vtsrSnLZ9JLSh1YHS3QMJEJO61jppaIRi8aiT +5Ko= +-----END CERTIFICATE----- diff --git a/examples/canvas/cert/ca.key b/examples/canvas/cert/ca.key new file mode 100644 index 000000000..0113be14b --- /dev/null +++ b/examples/canvas/cert/ca.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEowIBAAKCAQEAiuDA0Ct/8CGLPU0NG+5kHeRylTe+R78Tlqd/O/L87bh4y8iF +vVgjIw0KPnxR1BYW9+fgHPXuth0AGeW8thGaP0aekBdZHB4LgBAFPq+cHyeNqCnk +1MO/biTJZQE1fP8qHTGS+AWPC9LxFCaLuZb+i373iD+8e7nkjyfXkRT85lKY6nEN +pllDBlNkKJx63XsMtd95imDHgvVwGerR2Q7JnB0newyXs0+pIavXZ+SNq0WpcOV4 +mtTgMV110Gz411pZGxnZWoRVv+AVWIAFKUpKQcCp9GMv+3d3VWaCoxtcT86w00Jh +LTsuDlNlffwFGR7EG418YRkgRiNQbmTT3K+54QIDAQABAoIBAAhFUFZVcN4dMUyq +TRCPxvicxVIrqrJdJ85+FS69zuBdbxw7yfM3z4fj2+tSvhDSa/XBonA3GUtRONNS +AkYZkEUacJEGQvFQvMCYs6dDEBou4dnU/OLK8ZieqjvQsZ3LGHf6ntUUh6tdmavo +i8O2wVwPaLB9kz0PGhSIe+cRB+qzhB8yAkkQmHH+WrrklmWetlss7wr2gwwO+pyR +77ZKwLnOM0z+asdrS6O1lBoSCxDJfr/3pmXRzIGiE3u6XGCe6UEJn4OvvKa1WK8P +UWXnkQ/gsWOgdBTLI8RK8qw+fZEGMrdpCHIKDsvCXANMGAYk6If6Pwxvy9XpNGSC +eAfYHe0CgYEAwHtCca/+7e8NWk/J8z7D7cDDecaAlzpzTOteXOCgp4xeJrtFg+hS +TYIvxJnf4oCQo7ucvj1lxEdDSKlbD8rJ/7wLz114pDrSowV1n+LVNBN16gYVPmRY +1NZv1ppaN90+LYDgiJzurJg4DRFqZ7MzZ4gPxrhVx9xJ29S2ANrwpnsCgYEAuLUX +0Vkj29dFNDPGksG7x4hXWB9WlDSywv1zcsp8fwhGDASZxOXxSQ9/wkhVy5Rm//iv +WnDV/9A4qxlv9dcnel3h3EBkBZPgS2cLrWkGomJjEPrXs/wMj4MMhBOyhzFy0UTj +EZ9q0cGXZGJUZdPJvCYqif8n8YVlE/BFhBSxQFMCgYBZnQliRL47qIBe+6baSO6P +Up+vomtb/SqRNUPJmgsx9ngfMDE9KHyo+WOj9L/3hEPS9xYSvCMVLth0i+SJhbBm +D/avpKT2USygGXqZ5dG9XRIY0pwxYCa7cNrA3zwBpk+8f7QJ5oZ4dKYj72fKv/O+ +z+oIauoFEtqQLohN/aDs4QKBgC2EQuhOBS4psF4a3DZSE4oqKQwIPPesvNicSJTj +HSbYzRotEA+bcohEj4E6/hl66p7tk5i/8ZxmnXBchmCYspvPAteZ7owJUt6B+Di1 +hvMBN9R5XCp4VEgRTUZG7Fmwb9DuHt664EHsaPhN2up09GOvLBBxllBIRQ5SyW6x +ArUNAoGBALStRBe+oKWPajuwXeJ9wHpg88zl3KaUOl+hP/kBhht1CyWMNUTiY/1L +eBujV2vKFAlOrHzZB4K0WlcnaKL38F92aM+z4d1b43lAcUhjxDCzUlA7nVnth6kA +Qlj4ysViI/uuQETSoaZm0bc6wRmiuSWBNIrX1tdiNBtUMbNU4BAF +-----END RSA PRIVATE KEY----- diff --git a/examples/canvas/cert/cert.crt b/examples/canvas/cert/cert.crt new file mode 100644 index 000000000..e7901b08e --- /dev/null +++ b/examples/canvas/cert/cert.crt @@ -0,0 +1,41 @@ +-----BEGIN CERTIFICATE----- +MIIDTDCCAjSgAwIBAgIFNjA4NTcwDQYJKoZIhvcNAQELBQAwXjEQMA4GA1UEAxMH +VGVzdCBDQTELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNV +BAcTDVNhbiBGcmFuY2lzY28xEDAOBgNVBAoTB1Rlc3QgQ0EwHhcNMjQwNjIxMDMw +OTI5WhcNMjUwNjIxMDMwOTI5WjAUMRIwEAYDVQQDEwlsb2NhbGhvc3QwggEiMA0G +CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCg+bapfRpVTDWM3KIIcatC5zjwnC77 +CrxNPWUQlXvEdNnviEziiG+Tyshrl3sE6OUKfdWNFoW3mqW2t5MSUL1/yuIQUHKZ +vtrtQXv84yHI3PUCY1YkInB+qogc2Aso87BPunm5B8Em6aTPePIFqOZjHS8du1/G +A5xV4RA+Eq+lnRUwZDN6YTaRjZqOjLpL9hTEYxtp8wqhHGAPVF0bDukWeB+V5tYK +P6MUhViYgHk7n0dFmDIZ2GN2fLElugnGdRazls1fy/BbZ867ZLzkuWD97pH1xZlV +umXZYUoO+iByQbuCTEHMrwxiN9ko/Xiq/pPxayT0iPhMunWf/wNBK2nNAgMBAAGj +WzBZMAwGA1UdEwEB/wQCMAAwDgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsG +AQUFBwMBBggrBgEFBQcDAjAaBgNVHREEEzARgglsb2NhbGhvc3SHBH8AAAEwDQYJ +KoZIhvcNAQELBQADggEBAD3kDByBHq3VqX04SO5AT9bzWtLsna5B+acQI+1DadBO +0y51qdY/3kUmIBVBqUdXNgJa7GZsKu91AGW5aTCyAjZursQqYIa4UzkzdtIZyJw+ +2yXm8MrN/CK69LFOL4p2rfcBh/9lmRYXSDXRJ9uXONBPLmHN370HthU2Th1QJkv+ +WGPKtHmOHcVHS/WgLRG+iY1dZbwIsYZonYK1tQzmHUtQhsKziTYz4+ZPm+khhUho +/XYkibPBSS84HKCu6RSyY+3pjHuU2k2yaXSw1AT5Q/ZX8L0sfEs5VuEwLbSaoVU3 +3Z4moT3mPN8/dqSpaX0EA88cL0gtFqXBQn+nmyWOD1Y= +-----END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIIDXjCCAkagAwIBAgIFOTE5ODgwDQYJKoZIhvcNAQELBQAwXjEQMA4GA1UEAxMH +VGVzdCBDQTELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNV +BAcTDVNhbiBGcmFuY2lzY28xEDAOBgNVBAoTB1Rlc3QgQ0EwHhcNMjQwNjIxMDMw +OTI0WhcNMjUwNjIxMDMwOTI0WjBeMRAwDgYDVQQDEwdUZXN0IENBMQswCQYDVQQG +EwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZyYW5jaXNj +bzEQMA4GA1UEChMHVGVzdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +ggEBAIrgwNArf/Ahiz1NDRvuZB3kcpU3vke/E5anfzvy/O24eMvIhb1YIyMNCj58 +UdQWFvfn4Bz17rYdABnlvLYRmj9GnpAXWRweC4AQBT6vnB8njagp5NTDv24kyWUB +NXz/Kh0xkvgFjwvS8RQmi7mW/ot+94g/vHu55I8n15EU/OZSmOpxDaZZQwZTZCic +et17DLXfeYpgx4L1cBnq0dkOyZwdJ3sMl7NPqSGr12fkjatFqXDleJrU4DFdddBs ++NdaWRsZ2VqEVb/gFViABSlKSkHAqfRjL/t3d1VmgqMbXE/OsNNCYS07Lg5TZX38 +BRkexBuNfGEZIEYjUG5k09yvueECAwEAAaMjMCEwDwYDVR0TAQH/BAUwAwEB/zAO +BgNVHQ8BAf8EBAMCAgQwDQYJKoZIhvcNAQELBQADggEBAE0uZdl7ty3Eqk2m8+iJ +g3ojs9af0QOtnl/z8K3jhtBuuT7gtIx5ixzz9QffuI78XCOgvNxBXhAdT3VPz0mx +8rSP1gBNTJmPGyr3sciodNXO4k/jtOLKlkfqTk6JHAJsqa+4WG8JKrX3+z0wJ8gi +X4ojzh+dzXzt2B1pRdzzOOWnquO2jVjcQfW5SpGQYRNu17AyezZYrenActkX7ZFO +1oojAQukvxQZ+TMHxWuIJT5Rs6bartR9Dw1JqjP1/vzfh4u9fWUPZ+xFWrEVTvDk +HeVpFtpzg7PPDGl1axeRXlV5qc9vtsrSnLZ9JLSh1YHS3QMJEJO61jppaIRi8aiT +5Ko= +-----END CERTIFICATE----- diff --git a/examples/canvas/cert/cert.key b/examples/canvas/cert/cert.key new file mode 100644 index 000000000..104bbf45c --- /dev/null +++ b/examples/canvas/cert/cert.key @@ -0,0 +1,27 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIEpAIBAAKCAQEAoPm2qX0aVUw1jNyiCHGrQuc48Jwu+wq8TT1lEJV7xHTZ74hM +4ohvk8rIa5d7BOjlCn3VjRaFt5qltreTElC9f8riEFBymb7a7UF7/OMhyNz1AmNW +JCJwfqqIHNgLKPOwT7p5uQfBJumkz3jyBajmYx0vHbtfxgOcVeEQPhKvpZ0VMGQz +emE2kY2ajoy6S/YUxGMbafMKoRxgD1RdGw7pFngflebWCj+jFIVYmIB5O59HRZgy +GdhjdnyxJboJxnUWs5bNX8vwW2fOu2S85Llg/e6R9cWZVbpl2WFKDvogckG7gkxB +zK8MYjfZKP14qv6T8Wsk9Ij4TLp1n/8DQStpzQIDAQABAoIBAA9PoR2e3hXV4VQM +GkdWVHVRG9va5ycOntlz6Px6U2LcwGvlmXaEhqRWidid+F//rOViEaFRTpenmHJ4 +JH99+YBBsl3d4QCZpCYj7+CeU/TQe2dmPmfCdNO/caHYtLsI7rCuqmw8fhUu7POk +69Q4++zadkRMMbBaYJDUjuBwk49balp5a3x65bfYscuHAEGwrK15FqoKC6q5A5RY +gmg43cM4D3XkHkDNC2Mgv9UQJE3YFTp/en96+09WtQssEdfH1aPJmkdnKsaB6l4O +fBtVMY5Y/Pu0MWjJEbtYeOdWKbr8H3a5Ktx9wLpIHTWE7Wb99NWx9NWKJfy+MOaQ +4sUsNdsCgYEA2Csg1sZWoDpn3fdj6OtIbhhzrvBJ1rlFY+cZNcTKRAYk2ntHe4xn +t6PvHKxy0iLI9D/zgoK5E8NK9PcytPvV7ESwM4QBKB0S8OO+tG2Mqun7islX1qEc +tFxWjpkfWU0x6HUEbiGVkDF3JAS8quUpxr3SskWvcD3Qe1OZBCDeNJsCgYEAvqMT +7gHpb9lrhtKiiHPr9RCviUJKxyp8hPY6A46PzPVPPORt8TdL09wEJ8PjtPAKVaBm +sXstE+6pIDV27HvdolPTpSw00EPjcNPQksAZjrEOBFT6ASvmbL5P0dR5N5WDX15S +3uoiiB6Q4j/yvGd2OmVwy5NlbhEASuJ4oLpe3bcCgYEA1CrgfG0HMRSiRZY/Fal4 +2bZeNOHbV0lY9gkpEUEpVULCgT5mlrjkQ7Y/RmFsARvrKPBrzTkI9oDD3VOTDVfw +S4nPd4Cksf53TL/7uZOccVRec4XTFPHk/pFy01svDbNavNG9m2qTJYenbE7J7uIl +8s71Mcx7uSqyqZkPoqGv9ukCgYAKJuEO0ac+v5NMULc7EQFFwae3ZYJZ7NdItVwN +iG/7+CxKD9gS+mDdXWATRglAP3AtcydE2ExkPVdgUbiNi2MYG+KvbxU46gSYo479 +4aD6yk72yBewLEhPDitt/ySdYybl0z4ShOFl4krQ4ZrpkZDoNzK0hJroK5uaYUkP +Nh2LLQKBgQCiqR2tkKUTUCBdmnYk1U7gNcF4vTZIWVDlsnHjyzvo4d0DyIvV0eR9 +Zp1q/0xT4K59FdM9IaBONIjrJU/dT0MO62lm7Yjm1MXayoTaUkvXc7dz2UynLL3+ +5CpaRUQQ1kzW8Fc54TdrQshC28MroO7UK14ID8J6MU6xjtZTsm1mMA== +-----END RSA PRIVATE KEY----- diff --git a/examples/canvas/webpack.config.js b/examples/canvas/webpack.config.js index 796cc3601..a0e84d15b 100644 --- a/examples/canvas/webpack.config.js +++ b/examples/canvas/webpack.config.js @@ -9,8 +9,17 @@ module.exports = { directory: path.join(__dirname, "public"), }, compress: true, + hot: true, host: "0.0.0.0", port: 3000, + server: { + type: "https", // or use 'https' + options: { + ca: fs.readFileSync("cert/ca.crt"), + key: fs.readFileSync("cert/key.crt"), + cert: fs.readFileSync("cert/cert.crt"), + }, + }, }, module: { rules: [ diff --git a/packages/network/src/node.ts b/packages/network/src/node.ts index c5bc44264..d80fffbcb 100644 --- a/packages/network/src/node.ts +++ b/packages/network/src/node.ts @@ -60,7 +60,7 @@ export class TopologyNetworkNode { // Oak's server await this._node.dial([ multiaddr( - "/ip4/94.130.27.52/tcp/50000/ws/p2p/Qma3GsJmB47xYuyahPZPSadh1avvxfyYQwk8R3UnFrQ6aP", + "/ip4/94.130.27.52/tcp/50000/wss/p2p/Qma3GsJmB47xYuyahPZPSadh1avvxfyYQwk8R3UnFrQ6aP", ), ]); diff --git a/packages/network/src/relay.ts b/packages/network/src/relay.ts index 726ad7edf..ecd71a1b0 100644 --- a/packages/network/src/relay.ts +++ b/packages/network/src/relay.ts @@ -20,7 +20,7 @@ export const createRelayNode = async () => { const node = await createLibp2p({ peerId: idRelayer, addresses: { - listen: ["/ip4/0.0.0.0/tcp/50000/ws"], + listen: ["/ip4/0.0.0.0/tcp/50000/wss"], }, connectionEncryption: [noise()], connectionManager: {