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 startDoneیک منبع آزمایشی ایجاد کنید.
coaps resource test-resourceDone
سرویس گیرنده Secure CoAP را راه اندازی کنید
در گره مشتری Secure CoAP، مراحل زیر را انجام دهید:
عامل Secure CoAP را راه اندازی کنید:
coaps startDoneدستور
connectرا برای مقداردهی اولیه یک جلسه DTLS با همتا اجرا کنید:coaps connect fdde:ad00:beef:0:9903:14b:27e0:5744Done coaps connectedدستور
getرا برای به دست آوردن اطلاعات در مورد منبع اجرا کنید:coaps get test-resourceDone 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 hellothereDone coaps response from fdde:ad00:beef:0:9903:14b:27e0:5744در این مثال،
conبه این معنی است که شما می خواهید یک پیام قابل اعتماد، که با استفاده از یک پیام قابل تایید (con) به دست می آید، به سرور CoAP امن ارسال شود. پیشفرض ارسال یک پیام غیرقابل تأیید (non-con) است.رشته
hellothereنمونه ای از استفاده از پارامترpayloadاختیاری است کهtypeconیا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 است که به دنباله بایت کد اسکی تبدیل شده است.