OpenThread هم عملکرد Secure CoAP سرور و هم کارکرد کلاینت را ارائه می دهد و دستگاه ها را قادر می سازد به منابع موجود در سرور Secure CoAP متصل شوند و هر منبع را برای تغییر در وضعیت فعلی مشاهده کنند.
Secure CoAP از امنیت لایه انتقال دادهگرام (DTLS) برای ایجاد اتصالات امن و سرتاسر استفاده میکند.
عامل Secure CoAP ارائه شده در CLI می تواند به عنوان سرویس گیرنده Secure CoAP یا Secure CoAP سرور عمل کند.
این راهنما وظایف اولیه ای را ارائه می دهد که از برخی از دستورات رایج CoAP امن ( coaps
) استفاده می کنند.
فرمان های CoAP ایمن
برای فهرستی از دستورات Secure CoAP، help
تایپ کنید:
coaps help
connect
delete
disconnect
get
isclosed
isconnactive
isconnected
post
psk
put
resource
set
start
stop
x509
Done
مرجع فرمان CLI
برای توضیحات و نحو تمام دستورات، به مرجع فرمان CLI مراجعه کنید. دستورات Secure CoAP بر اساس حروف الفبا با coaps connect شروع می شوند.
مثالی از سرور CoAP امن و استفاده از فرمان مشتری
این مثال از دستورات اولیه CLI برای راهاندازی سرور و کلاینت Secure CoAP، ایجاد یک منبع آزمایشی در سرور Secure CoAP و ایجاد تعامل Secure CoAP با منبع استفاده میکند. داده های نمونه برای مقاصد توضیحی استفاده می شود.
مجموعه رمزهای DTLS را پیکربندی کنید
coaps
CLI دستورات psk
و x509
را ارائه می دهد که می توانند با کلید PSK و گواهی X.509 استفاده شوند. برای دستورات و مثالها، به coaps psk و coaps x509 مراجعه کنید.
سرور CoAP امن را راه اندازی کنید
در گره سرور Secure CoAP، مراحل زیر را انجام دهید:
عامل Secure CoAP را راه اندازی کنید.
coaps start
Doneیک منبع آزمایشی ایجاد کنید.
coaps resource test-resource
Done
سرویس گیرنده Secure CoAP را راه اندازی کنید
در گره مشتری Secure CoAP، مراحل زیر را انجام دهید:
عامل Secure CoAP را راه اندازی کنید:
coaps start
Doneدستور
connect
را برای مقداردهی اولیه یک جلسه DTLS با همتا اجرا کنید:coaps connect fdde:ad00:beef:0:9903:14b:27e0:5744
Done coaps connectedدستور
get
را برای به دست آوردن اطلاعات در مورد منبع اجرا کنید:coaps get test-resource
Done coaps response from fdde:ad00:beef:0:9903:14b:27e0:5744 with payload: 68656c6c6f576f726c6400آخرین بخش از پاسخ سرور عبارت
with payload:
است و به دنبال آن تمام بایت های بار در قالب رقم هگزا دسیمال آمده است. در مثال،with payload: 68656c6c6f576f726c6400
نشان میدهد که بار فعلی برای منبع مقدار هگزادسیمال68656c6c6f576f726c6400
است که به رشتهhelloWorld
تبدیل میشود. برای اطلاعات بیشتر در مورد استفاده از گزینهpayload
به پست coaps مراجعه کنید.می توانید منبع را با استفاده از دستور
put
تغییر دهید:coaps put test-resource con hellothere
Done coaps response from fdde:ad00:beef:0:9903:14b:27e0:5744در این مثال،
con
به این معنی است که شما می خواهید یک پیام قابل اعتماد، که با استفاده از یک پیام قابل تایید (con
) به دست می آید، به سرور CoAP امن ارسال شود. پیشفرض ارسال یک پیام غیرقابل تأیید (non-con
) است.رشته
hellothere
نمونه ای از استفاده از پارامترpayload
اختیاری است کهtype
con
یاnon-con
است. برای کسب اطلاعات بیشتر به کواپ قرار داده شده مراجعه کنید.سرور با آدرس IPv6 خود پاسخ می دهد تا نشان دهد درخواست رسیدگی شده است.
پاسخ ها به سرور CoAP امن ارسال می شود
در سرور، خروجی از این مثال مشابه موارد زیر خواهد بود:
coaps request from fdde:ad00:beef:0:9e68:576f:714c:f395 GET coaps response sent coaps request from fdde:ad00:beef:0:9e68:576f:714c:f395 PUT with payload: 68656c6c6f7468657265 coaps response sent
مقدار payload
68656c6c6f7468657265
رشته hellothere
است که به دنباله بایت کد اسکی تبدیل شده است.