Skip to content

Commit d62e58d

Browse files
committed
100daysofcode - day42 - learning grpc authentication
added a server with tls cert, need further optimization
1 parent 45ecdaf commit d62e58d

File tree

12 files changed

+256
-2
lines changed

12 files changed

+256
-2
lines changed
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIIDHTCCAgUCCQDEL1Wf8QsdPTANBgkqhkiG9w0BAQsFADBUMQswCQYDVQQGEwJV
3+
UzELMAkGA1UECAwCREUxHDAaBgNVBAoME0V4YW1wbGVSb290Q0EsIEluYy4xGjAY
4+
BgNVBAMMEWV4YW1wbGVyb290Y2Eub3JnMB4XDTIzMDQyNzExMzUwN1oXDTI0MDQx
5+
NzExMzUwN1owTTELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkRFMR0wGwYDVQQKDBRF
6+
eGFtcGxlLWNsaWVudCwgSW5jLjESMBAGA1UEAwwJbG9jYWxob3N0MIIBIjANBgkq
7+
hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuwe1m9I9P+GnmMit1hfH0TTNqC+sX1FU
8+
OGDKDYd69ycBWrtx3JWT+QCkkrhx1bvjd2qZhgdFmnhcU+id3leo7UTTwqruLV2x
9+
/aK313veKfQsVcCXMtmc52nCBI3pkfC9hGWVnMzqrumx+4ke0aUnIGdfesyD1THy
10+
j4EFhpgtt3zhpfE5hew7/a1CZ88HwqexL66c+wbVo+eDBuW0M+dNcEJFAqcDPy62
11+
5wLQSpVjeCKUO3iFvI9FVQZOBfvVJ/HmRikSZcFUKiEF0Ovyochay6LLwtsT40Ys
12+
bsFyxwV4Yrn8cyzXgi1EOp3YBg+7J/1ZDq4xJKgoLqxD+h7B2KKycwIDAQABMA0G
13+
CSqGSIb3DQEBCwUAA4IBAQARp5XCxfQ6d2LsxylO+qeYyj6j45Fv9hMh2LTkGtAL
14+
5qvK0kolnFQ3f5eZWbtZYK5Bl0iTB7Rj6KSsvQ9Ks2FL11NpWLttQZcv9HzDsc8q
15+
Rh8aT9hZPEo2xlPYNWtJIhZ8I8+q+v4mLQnIv7Pvt6kl6RZZco4D7yDKngSV7/rf
16+
lvxa7IvYE+dp/CHYwuJQh/lOwNckqpY36SisG48HgV+W6LDORXeNTZtyoE5eQmZK
17+
eqbWBkgJ7WuPoR6sObb/3Fhjz5tqLtiCQ8TmD/dCpYQKeF6OnFqpTVS1gXza/cEH
18+
2+dpebDFnvmNvE10QD0a91+EXaj2elFmjOKTVi4U0etz
19+
-----END CERTIFICATE-----
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
-----BEGIN CERTIFICATE REQUEST-----
2+
MIICkjCCAXoCAQAwTTELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkRFMR0wGwYDVQQK
3+
DBRFeGFtcGxlLWNsaWVudCwgSW5jLjESMBAGA1UEAwwJbG9jYWxob3N0MIIBIjAN
4+
BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuwe1m9I9P+GnmMit1hfH0TTNqC+s
5+
X1FUOGDKDYd69ycBWrtx3JWT+QCkkrhx1bvjd2qZhgdFmnhcU+id3leo7UTTwqru
6+
LV2x/aK313veKfQsVcCXMtmc52nCBI3pkfC9hGWVnMzqrumx+4ke0aUnIGdfesyD
7+
1THyj4EFhpgtt3zhpfE5hew7/a1CZ88HwqexL66c+wbVo+eDBuW0M+dNcEJFAqcD
8+
Py625wLQSpVjeCKUO3iFvI9FVQZOBfvVJ/HmRikSZcFUKiEF0Ovyochay6LLwtsT
9+
40YsbsFyxwV4Yrn8cyzXgi1EOp3YBg+7J/1ZDq4xJKgoLqxD+h7B2KKycwIDAQAB
10+
oAAwDQYJKoZIhvcNAQELBQADggEBAGFRxTBKSiHQ1N4J85x+7gBc9BBIumOO3JUQ
11+
JwSxIoWFjudDpk6+Q9yG/+pM47GTJnOYLxdhrr72EbCagdv9PmTgxZMB/rXD8gSy
12+
vRNEZ917LFuRJCixKZLlc4hHqmrv9cQ/oHpRRmewlSZAjUdNaRmp3ONtoC+088wN
13+
PRNfHFIqd9Z2b5ZXY+eZTQ/J8wp2mzCdjOcdorLYiHl8FsheHOujQtalbFvBbVBr
14+
n2T428JyJ2bL/+d9idKuJar8AdEs7ma/1LYFt5gaAy2M59+0fqjuQFb735Ekp/FK
15+
dQFTpvZspJHfh80BYtiifa2GAn2BbgYTKFOaXbiqFCBFskzVmc0=
16+
-----END CERTIFICATE REQUEST-----
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
-----BEGIN PRIVATE KEY-----
2+
MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQC7B7Wb0j0/4aeY
3+
yK3WF8fRNM2oL6xfUVQ4YMoNh3r3JwFau3HclZP5AKSSuHHVu+N3apmGB0WaeFxT
4+
6J3eV6jtRNPCqu4tXbH9orfXe94p9CxVwJcy2ZznacIEjemR8L2EZZWczOqu6bH7
5+
iR7RpScgZ196zIPVMfKPgQWGmC23fOGl8TmF7Dv9rUJnzwfCp7Evrpz7BtWj54MG
6+
5bQz501wQkUCpwM/LrbnAtBKlWN4IpQ7eIW8j0VVBk4F+9Un8eZGKRJlwVQqIQXQ
7+
6/KhyFrLosvC2xPjRixuwXLHBXhiufxzLNeCLUQ6ndgGD7sn/VkOrjEkqCgurEP6
8+
HsHYorJzAgMBAAECggEALD1gmeEbF9c6m4ssg23QmA3Tb6sHLOzB7SwH3zdiwL97
9+
NIkOH81J2SZrx0DVvGbbIU4Xzno93pIF1Ns7LHKzxJv5MxzXheeZyJMKxW/JV0co
10+
jYgmu6J52MtNV2JyE1FMotqcjyBxirpAnW0L2y8jmCibjyJ9NJrB82vjcLjiZ3o8
11+
iIEhUJTbwx5j6hdXGE+iCtXLMaahkhvJW1LCPSE+USz5y2IznpZLF84/AVYJnGHa
12+
ILzy4v1rrtvR+I72qFT0796v5/THHiX/N+/iDsQMJm0cQp+a49MjYb8ef4fh2G8Q
13+
Um7oUh3+0KrjnwOigVT/PZyVJCzypULnMHqmB6gAIQKBgQD0SamKv9vdI8/XAuSu
14+
hcrYL5q/k2IAsz4/3WfCb85+UBh8APqPVCEviwuMERycAj7Ka6pLCv5k1oHf/OTf
15+
q++UD08aV/VrAPTIi0spx3+yPmCWABkQoV/5cK7CGIf7chCgGjM5yORCDOTTCeuL
16+
7vznPGPwVFsRRMJH8zq2kwhC2QKBgQDD/0da/IY1by6V08UKVvFaKkHOa1iMy3MB
17+
lUsfHYMipYJIwL2cXUxR+/9YT/rLczC8Mcgoh3ux4xiDf1j2OQBq59JX24RBXQIj
18+
nD4H7OjtmwKvkooJzm7Q6vEH1O2xx5e+jFAz+/angXySzwmSY8f9hRLR3DCSohXn
19+
fmOGEKA4KwKBgAYH84mbZwA0rCLwzViJsRJZSobESr0dr8G/45nnTL/Nlm0pUQZM
20+
22zjD+vrWDt5yrcQpWmo4dL3gMlY4wWqpwWOwzMxTLvRkDmLRtXHOR3bcGMDqZrB
21+
gS8VWxsro9/PVx28x9r7XLdMvjF/ozMXOWM0GHuMeZsZiXphROfRBXkxAoGAPzQ9
22+
QHwak3StIyfNbM4oupjR68z2G0EobyRDu177ANs6rldpTdlQWUfYShRQnfchii7L
23+
izZVj0Haj90rRQuQtOjZDff+KE3j+LPT1R5y5tyL+y5YUV0+oySAYbQqiqAAsTPy
24+
UTE5kz7Qe09EmO6QeZLGROKqzz5xrds2IO+Pm00CgYAkGIgBiUcjI6IL8sScCIzH
25+
Kn1kCfue7IZ0mZ1Fz4papfWeORlQVmXbVtpU++xze1Vr95O8kWKelaZ1JNVmAEAU
26+
HrjB3ycHVNkIypoLbCfREQN9lwA3x/lcRhF/fgL6Pja93knt1LWy13z87Nw69kCa
27+
cnmIWwIEQxQQzBXqGRK8cg==
28+
-----END PRIVATE KEY-----
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIIDJDCCAgwCCQDDIEg6DkH3azANBgkqhkiG9w0BAQsFADBUMQswCQYDVQQGEwJV
3+
UzELMAkGA1UECAwCREUxHDAaBgNVBAoME0V4YW1wbGVSb290Q0EsIEluYy4xGjAY
4+
BgNVBAMMEWV4YW1wbGVyb290Y2Eub3JnMB4XDTIzMDQyNzExMzUwNloXDTI0MDQx
5+
NzExMzUwNlowVDELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkRFMRwwGgYDVQQKDBNF
6+
eGFtcGxlUm9vdENBLCBJbmMuMRowGAYDVQQDDBFleGFtcGxlcm9vdGNhLm9yZzCC
7+
ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALsBYBbQC/RPetbZGO0H8Xad
8+
zwFDNj096couUBdRr3rQ/mPAKwsEPQgXzLSljb9ObsQVdp9/XQoXlhE+6PEpgDQL
9+
nPq/um487SbRzaL1PpBnniEEkqHa5sWbzrqSCqX76N7X/CTCqDHpzUl4Pi9nqJOM
10+
DGDJxaLZco5lMEvKJ0DQZaJTYd6HFxDcpZDMhRPTElQQx2+mhG60SlzoqrKowGwY
11+
ptGJ5C8DR8VdQNgPbXiRHvZETm5O8/fdiHOo1k0ypjvXt5Avu6ohmD6L/ZipKAPz
12+
bLB8KYFIS+uXf/JT68o74wUwuoB8HUk+TGxY1VqP0RDeei40q0inHRdSv4f3KEkC
13+
AwEAATANBgkqhkiG9w0BAQsFAAOCAQEAATs16tJvj9QC7i2TyGkXi0pzcDzwIMa8
14+
GPhKAUqJeQkbtCXFXm6NhLopVydRvqW/vJ0BUdYSh6SckSu0BYdOnX91JCmw+lCC
15+
sZ2c4n7xt0qynECNI0QnOKJc4uHjI7Av/wJsDUBYzSf4fYOZOwuWMHegnKwNu80L
16+
DIrjPgAJdO9qIJN3QoeWrGT23kv9Yty/EMGYr0QczC5zSS6J8IqVzcDLB8cJHkpc
17+
ZkBBNFN67PNpLSCNcIHy/7LjNIpV3HTirrZ3FSmFvOZSgjHKc9UO6bZAxgopo9lD
18+
58LjVWr9sSHtwuEW4brA0/YkYe7Enuc3aHjL262rlkY4RjIwl9hw+w==
19+
-----END CERTIFICATE-----
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
-----BEGIN PRIVATE KEY-----
2+
MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQC7AWAW0Av0T3rW
3+
2RjtB/F2nc8BQzY9PenKLlAXUa960P5jwCsLBD0IF8y0pY2/Tm7EFXaff10KF5YR
4+
PujxKYA0C5z6v7puPO0m0c2i9T6QZ54hBJKh2ubFm866kgql++je1/wkwqgx6c1J
5+
eD4vZ6iTjAxgycWi2XKOZTBLyidA0GWiU2HehxcQ3KWQzIUT0xJUEMdvpoRutEpc
6+
6KqyqMBsGKbRieQvA0fFXUDYD214kR72RE5uTvP33YhzqNZNMqY717eQL7uqIZg+
7+
i/2YqSgD82ywfCmBSEvrl3/yU+vKO+MFMLqAfB1JPkxsWNVaj9EQ3nouNKtIpx0X
8+
Ur+H9yhJAgMBAAECggEAY1EJrVP05V3IyY4nNMvBK9QH+o2torzdC2mpU5kobzvL
9+
v0JyGbm4iDHLoC1EqNOI9E7J30+PJCr+ok4c/OejlQCN8IYfBykIclN+uQsynRLK
10+
4pJBJgDSCyUCmAez7A9rz945pXRUS532TwyzSg3tc98vO8AtXJ3Lv2ByU+4bBso+
11+
P+8VFmvq4tWjOIxpTQlfDMFgGWy+z0nQaz7jMlvwgIFGaI1w9BZaWtD6h7gx8WVq
12+
79dlk9ETYEmYi2Vsxp8TNJ0gP1JxV9cGH8Q1URsahFbzN0/nl1c28+guBzgFjQ+Z
13+
+k+GfYQwJ+MlYlvipFja5mI0FQoYokYT2xQ5f51rYQKBgQDoGZrsttM35rN5VScv
14+
/1uTsfj7aEHeeaB9nHQcI0YwJ3Z1o6B1vAiHoY2XvxODh+Qul6tuCOmfW4/v+MtX
15+
pidrE3VicaqlnAko6O72gr27Wo2KR4TQ7IWc/6aHvv7IfBhAU20JJbS+hBAqiBZ2
16+
T60UJF/x5v74lcsOKmiTNuLGTQKBgQDOQwdp+qNfQTjxDYhH7uRoXHPCH4LzCb2O
17+
faWn7QVtci19d5xPWv4OnBX+juUZ1tlre94qWX2UJfA9OdE9bXR0KWWMNIzvu6/N
18+
Wwn6O+mpejY93F+ayDmoDvjxYSO0z0VQZFlJ58yymkLhBhGGvk7+xZe2bekmJ9RC
19+
0G91B6tf7QKBgQCrRHm1wxMJZQt6tQM9v8jrq6B2o/A3Irjy98gWG1Fnpzcah6uY
20+
NTB2JRg+qZjUrioK15CAmcMK/J2yDny+KLVdpfYwtn+dxQ5dScVL0h3/akqXhz7S
21+
jDXsLBnOgXmwpyGeFfGXlmNRUlI7kEBC/XhSLKU/85yiAqbbxR91wkKE4QKBgQCQ
22+
JpRF4t7OsZyECzsVWsXSkdps7uzrwgDyVqmxhJrodIWKTE+3vhYUS82rTF6dAmSN
23+
E9KeslBre2A8ye2MCrT6gfvwUsG0we0JjfiZI8oXocvKy/sdB5YT9/LPb14u/TSq
24+
DJfCaPfMUrcu4Lja/KHkuF9hJctt2SQlVdqvZZ7FuQKBgQDKdnhYHHEMtAW0Ns9a
25+
hFeXlkbK+MA6/lhAojQ/s49sB2h8paHLqE+LcmbEMH08uN2CYY0jYgkfwjTnh8od
26+
74zKtv3Gny7iUpvIRAgLPohgWFZthctJsPoFMHg6RWb6eRTjHDmTWLzjP2xJ9rAA
27+
VdZzcp5DIdEyIRRyqHAYQ67Kfw==
28+
-----END PRIVATE KEY-----
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
C42F559FF10B1D3D
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIIDHTCCAgUCCQDEL1Wf8QsdPDANBgkqhkiG9w0BAQsFADBUMQswCQYDVQQGEwJV
3+
UzELMAkGA1UECAwCREUxHDAaBgNVBAoME0V4YW1wbGVSb290Q0EsIEluYy4xGjAY
4+
BgNVBAMMEWV4YW1wbGVyb290Y2Eub3JnMB4XDTIzMDQyNzExMzUwNloXDTI0MDQx
5+
NzExMzUwNlowTTELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkRFMR0wGwYDVQQKDBRF
6+
eGFtcGxlLXNlcnZlciwgSW5jLjESMBAGA1UEAwwJbG9jYWxob3N0MIIBIjANBgkq
7+
hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtn3p+dA3IUFpo0LHUjSwEnZ6basGEz6x
8+
b9OM+nXIgcOTgWsDcdLEMY/rdEPrb7Xvm7qo/6Y+oongfv/p22jOHXcs5UfEj/5Y
9+
eBMl3crYUkcofYcji44hAFhrAQk94gwQeI2pjVvoFQ9vksliWt4MagwSJaQ6lwEg
10+
NOhNBJDu/Iy5ctppEEM5USV8q5c4+sX/vUrCs/CRavJfaZvohMTpiMmHugDcp/uv
11+
YC3SFqTNh99lylXiuQMOUEUVaj+i5Mu9qsmNPCBKPcY3j3Q90iSEdY9ZzRF+M1J3
12+
KYqbK7Gj0uFzcc17UoxO2rfBnoNI9MYV2kN26qeIVl4PQhSFoBuKwQIDAQABMA0G
13+
CSqGSIb3DQEBCwUAA4IBAQAbZtsxlFF/M/xJivM5FZTCbz0yP6H8d88l6EuH6NAm
14+
I1cCnAKM6gOT3JfS79sAOIYcecNkbiHkqh+exopjo/TnIhNs0pDYX4KVYUp4/IC9
15+
a7xs2csmkXyFJ9uaALpZK2NRQypNG9crsFTG5wuwXUdAbHDaD4z69EPzqvGB+QaK
16+
JtlmUTAZTyz5NqcIk6fB4EfGnN436PNvt8rbbcj8Vhm2mRoYMVBlddflW3kv1Imz
17+
yevankosQZ6RJCDTcgGoiZk53q/iIVMpGNy+dXDYHWShfitGLzrF6AM2VKR/2T6r
18+
U7DyvZcF2FBbLW2bz8amz69a7J9qiNgnSMm1YMUzz12n
19+
-----END CERTIFICATE-----
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
-----BEGIN CERTIFICATE REQUEST-----
2+
MIICkjCCAXoCAQAwTTELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkRFMR0wGwYDVQQK
3+
DBRFeGFtcGxlLXNlcnZlciwgSW5jLjESMBAGA1UEAwwJbG9jYWxob3N0MIIBIjAN
4+
BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtn3p+dA3IUFpo0LHUjSwEnZ6basG
5+
Ez6xb9OM+nXIgcOTgWsDcdLEMY/rdEPrb7Xvm7qo/6Y+oongfv/p22jOHXcs5UfE
6+
j/5YeBMl3crYUkcofYcji44hAFhrAQk94gwQeI2pjVvoFQ9vksliWt4MagwSJaQ6
7+
lwEgNOhNBJDu/Iy5ctppEEM5USV8q5c4+sX/vUrCs/CRavJfaZvohMTpiMmHugDc
8+
p/uvYC3SFqTNh99lylXiuQMOUEUVaj+i5Mu9qsmNPCBKPcY3j3Q90iSEdY9ZzRF+
9+
M1J3KYqbK7Gj0uFzcc17UoxO2rfBnoNI9MYV2kN26qeIVl4PQhSFoBuKwQIDAQAB
10+
oAAwDQYJKoZIhvcNAQELBQADggEBABanLh1iohAbUiPbrC5qmFyX6fllyle5K/cR
11+
oqcHjh5Ce15ESxpQap3yTNUp0Y7sLjipnzuXN5JKyOstTNM8K+9wIZz4j3axOjiJ
12+
mVVPlApLZ4c/1qG0sdUgRKwrVj3XjZsTU4Wfcxbf0pgnqAmMx9WHDLUkPK/H2E4A
13+
qyPJwTf9PsjnJOIRbuTPMYoyPHRniD0DlxTYab8eWnkkEZcXYtSmlCj7DSpoC8E+
14+
MO+MfuMsYeLW/8z//+NmC0NEEVhiEk4TXJLwjjta6E5D+CnOdwBdSEhQOe0zhtRQ
15+
79V02wBPGr80DHUrJdfqYtj0IHBoUvO19DkeMksBIbOAIM1f0RI=
16+
-----END CERTIFICATE REQUEST-----
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
-----BEGIN PRIVATE KEY-----
2+
MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQC2fen50DchQWmj
3+
QsdSNLASdnptqwYTPrFv04z6dciBw5OBawNx0sQxj+t0Q+tvte+buqj/pj6iieB+
4+
/+nbaM4ddyzlR8SP/lh4EyXdythSRyh9hyOLjiEAWGsBCT3iDBB4jamNW+gVD2+S
5+
yWJa3gxqDBIlpDqXASA06E0EkO78jLly2mkQQzlRJXyrlzj6xf+9SsKz8JFq8l9p
6+
m+iExOmIyYe6ANyn+69gLdIWpM2H32XKVeK5Aw5QRRVqP6Lky72qyY08IEo9xjeP
7+
dD3SJIR1j1nNEX4zUncpipsrsaPS4XNxzXtSjE7at8Geg0j0xhXaQ3bqp4hWXg9C
8+
FIWgG4rBAgMBAAECggEBAKJYdZO1dbXx+UYyHBu3n4NtPxDc+nSYa0VuT5Zovc0i
9+
7dBOISxbMgpdXDt8SLCCi/xgHAQCIup5+etBQwvburFf2eLG68ilnpKDhkY/NB5O
10+
C2lQlYCLGjSyc87iJ9k2nliAvftxbY9+weU1nnfz3dthjatK5Ix9hedLWWjcfp7Q
11+
GUNkQgOi+FS8ZWT/ipPsEerA499jQa2o4zlm3UQE5eY6ljJXmSSwGuJmeScm6S6A
12+
u+miinCEJmTpJblWNgt9nvMlaYzLiwA9/bFBJUt2toYkf9cS1x5NvCLmMGTRoKli
13+
GS5wMJo2m4dC8hxaVunqHvATdzG3wIqpT0rH21IgWfkCgYEA3+Te5uzf9oeT/4X8
14+
uKdjzvVY3hPPSk0832YSROvQhJ6r7vZmx4yLFnpREHv6vIvn98A9bC+Lgx3cLts7
15+
MWmuEITwLoLiwvAazfRB2gsvvC/VMRxKP1qVk6zu5NGJCGbHMFUZM1PvtrwRqUW0
16+
7cIT3S0SlhaQQEeYnWqm2LdVHs8CgYEA0KksVo3oSeSoO7mFZDwil9CiqQ6TEYZu
17+
IEFRUWv25/qUV9pvhN9mzG+5CJttlY7KcoQ9jqo2QWF3CWBpjTKhxWrj93cv6uQA
18+
e5GGOk56Ub+maJtWu0EUhVepWoiNl43HFjDIReBaVhJp4XIfSMgG9C1aBAMfV5LM
19+
ZC9xpzW9oW8CgYB4i0wrvrsyi3p2Z9hSPuVw5w3Ku5Wupnkwuk75xpEE5j0hso5R
20+
v+ye1IpSur2byCPDc0BewBZ4KJqEq8pp50EtabW7BQM7+3QjEPBnigBQbNx2zYl4
21+
JLhFwyT4E4yY9mUmM5sW1IlKtGU54urv279AJOVN46YUxbd4gZSFN+ffZwKBgQC3
22+
y3wZlY/5nqatTQH5Q5r4/LZ6kTLsKexRDxfQz3fB6I/IPskiUiHbi8GBml7RcOBU
23+
NLWAN9/ogTB4Gut+iw3BtiCtdtfHYCQotAt2ym+mGFk9JS8la/LmbUvoSgXma+Tk
24+
X/3YxwDrdfa7tWlnE4JEjLoQdKuj2NOen8fNkGHDkwKBgQC4Uv9jp/XzyfbkPkUx
25+
nV9FiFOtXXDDgV8C7pO5mDFXTO6mMDEyCffAdfxCKabXBrrrK/3ZwZrRstpCwpDQ
26+
6unlTSyiLJ3Pk5/+zocktnxG8/T3FYQdUDsBYyaiuYkKUiimPPIIedZdBKrEOPAn
27+
/lTRSjqtD5FqlnBtG99tbrGGpg==
28+
-----END PRIVATE KEY-----
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
package main
2+
3+
import (
4+
"context"
5+
"flag"
6+
"fmt"
7+
"log"
8+
"net"
9+
10+
pb "github.com/deepns/codegym/go/learning/grpc/echo/echo"
11+
"google.golang.org/grpc"
12+
"google.golang.org/grpc/credentials"
13+
)
14+
15+
type echoServer struct {
16+
pb.UnimplementedEchoServiceServer
17+
}
18+
19+
func (s *echoServer) UnaryEcho(ctx context.Context, req *pb.EchoRequest) (*pb.EchoResponse, error) {
20+
log.Printf("UnaryEcho: %v", req.Message)
21+
return &pb.EchoResponse{Message: req.Message}, nil
22+
}
23+
24+
func main() {
25+
port := flag.Int("port", 50505, "port to listen")
26+
flag.Parse()
27+
28+
lis, err := net.Listen("tcp", fmt.Sprintf(":%d", *port))
29+
if err != nil {
30+
log.Fatalf("failed to listen: %v", err)
31+
}
32+
33+
cert, err := credentials.NewServerTLSFromFile("../sslcerts/server.crt", "../sslcerts/server.key")
34+
if err != nil {
35+
log.Fatalf("failed to load TLS cert: %v", err)
36+
}
37+
s := grpc.NewServer(grpc.Creds(cert))
38+
pb.RegisterEchoServiceServer(s, &echoServer{})
39+
40+
log.Printf("Listening on port %d", *port)
41+
if err := s.Serve(lis); err != nil {
42+
log.Fatalf("failed to serve: %v", err)
43+
}
44+
}

0 commit comments

Comments
 (0)