{"id":1174,"date":"2025-08-26T11:00:34","date_gmt":"2025-08-26T02:00:34","guid":{"rendered":"https:\/\/www.decteng.com\/ko\/?p=1174"},"modified":"2025-08-28T09:48:35","modified_gmt":"2025-08-28T00:48:35","slug":"wowza-https-certificate-for-hls-push-debug-python","status":"publish","type":"post","link":"https:\/\/www.decteng.com\/ko\/wowza-https-certificate-for-hls-push-debug-python\/","title":{"rendered":"\uc640\uc6b0\uc790 \uc2a4\ud2b8\ub9ac\ubc0d \uc5d4\uc9c4\uc5d0 https \uc0ac\uc124 \uc778\uc99d\uc11c\ub97c \uc801\uc6a9\ud558\ub294 \ubc29\ubc95"},"content":{"rendered":"\n<section>\n<h2>HLS\uc640 https \uc778\uc99d\uc11c<\/h2>\n<p><dfN>HLS(HTTP Live Streaming)<\/dfn>\ub294 \uc6b0\ub9ac\uac00 \ud754\ud788 <strong>\uc778\ud130\ub137<\/strong>\uc774\ub77c\uace0 \ubd80\ub974\ub294 HTTP(HyperText Transfer Protocol)\ub97c \uc774\uc6a9\ud574 \ub3d9\uc601\uc0c1 \ud30c\uc77c\uacfc \uadf8 \ub3d9\uc601\uc0c1 \ud30c\uc77c\uc744 \uc7ac\uc0dd\ud560 \uc7ac\uc0dd\ubaa9\ub85d\uc744 \uc804\uc1a1\ud558\ub294 \ubc29\uc2dd\uc744 \uc0ac\uc6a9\ud55c\ub2e4.<\/p>\n<p>\uc778\ud130\ub137 \ucd08\uae30\ubd80\ud130 \uc0ac\uc6a9\ub41c http\ub294 \ub3c4\uccad\uc774\ub098 \ubcc0\uc870\uac00 \uac00\ub2a5\ud55c \ubcf4\uc548\uc0c1\uc758 \ubb38\uc81c\uac00 \ub300\ub450\ub418\uc5c8\uace0, \uc774\ub97c \ub300\uc751\ud558\uae30 \uc704\ud574 <dfn>https<\/dfn>\uac00 \ub110\ub9ac \uc0ac\uc6a9\ub418\uac8c \ub418\uc5b4 \ud604\ub300 \uc778\ud130\ub137 \uc804\uc1a1\uc758 \ud45c\uc900 \ubc29\uc2dd\uc774 \ub418\uc5c8\ub2e4. https\ub294 \uc804\uc1a1\ub418\ub294 \ub370\uc774\ud130\ub97c <strong>\ud0a4(key)<\/strong>\ub97c \uc0ac\uc6a9\ud574 \uc554\ud638\ud654\ud558\uace0, \ud1b5\uc2e0\ud558\ub294 \ub300\uc0c1\uc758 \uc9c4\uc704\uc5ec\ubd80\ub97c <strong>\uc778\uc99d\uc11c(certificate)<\/strong>\ub85c \ud655\uc778\ud574, \ud1b5\uc2e0\uc758 \uc2e0\ub8b0\uc131\uc744 \ub192\uc778\ub2e4.<\/p>\n<p>\ubb38\uc81c\ub294, \uc774\ub7ec\ud55c \ubcf4\uc548 \ub300\ucc45\ub4e4\uc740 \uc2e4\uc81c \uc11c\ube44\uc2a4 \ud658\uacbd\uc5d0\uc11c \ud070 \ub3c4\uc6c0\uc774 \ub418\uc9c0\ub9cc, <a href=\"https:\/\/www.decteng.com\/ko\/obs-youtube-hls-push-stream-capture-to-debug-pushcap\/\" title=\"OBS HLS PUSH \uc2a4\ud2b8\ub9bc \ucea1\ucc98\" hreflang=\"ko-kr\">\uac1c\ubc1c\ud658\uacbd<\/a>\uc5d0\uc11c\ub294 \uadf8\ub2e4\uc9c0 \ub3c4\uc6c0\uc774 \ub418\uc9c0 \ubabb\ud55c\ub2e4\ub294 \uac83\uc774\ub2e4. <code>OBS<\/code>\ub098 <code>\uc640\uc6b0\uc790 \uc2a4\ud2b8\ub9ac\ubc0d \uc5d4\uc9c4(Wowza Streaming Engine)<\/code>\uac19\uc740 \uc2a4\ud2b8\ub9ac\ubc0d \ud504\ub85c\uadf8\ub7a8\uc5d0\uc11c https \uc778\uc99d\uc11c\ub97c \ubb38\uc81c\uc0bc\uc544 \uc1a1\ucd9c\uc744 \ud558\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc774\ub2e4. \ub54c\ubb38\uc5d0 \uc0ac\uc124 \uc778\uc99d\uc11c\ub97c \uc0dd\uc131\ud558\uace0 \ud5c8\uc6a9\ud558\ub3c4\ub85d \ub9cc\ub4e4\uc5b4 \uc8fc\uc5b4\uc57c \ud55c\ub2e4.<\/p>\n<p>\ubcf8 \uae00\uc5d0\uc11c\ub294 \uc640\uc6b0\uc790\ub098 OBS\uac19\uc740 \uc2a4\ud2b8\ub9ac\ubc0d \ud504\ub85c\uadf8\ub7a8\uc774 <code>PushCap<\/code>\uc640 \uac19\uc740 \uc0ac\uc124 HLS PUSH \uc11c\ubc84\uc5d0 \uc2a4\ud2b8\ub9ac\ubc0d \uc1a1\ucd9c\uc744 \ud5c8\uc6a9\ud558\ub3c4\ub85d, \ud30c\uc774\uc36c\uc744 \uc774\uc6a9\ud574 \uc0ac\uc124 \uc778\uc99d\uc11c\ub97c \uc0dd\uc131\ud558\uace0 \uc801\uc6a9\ud558\ub294 \ubc29\ubc95\uc5d0 \ub300\ud574 \uc124\uba85\ud55c\ub2e4.<\/p>\n<\/section>\n\n<section>\n<h2>\ud30c\uc774\uc36c\uc744 \uc774\uc6a9\ud55c \uc778\uc99d\uc11c \uc0dd\uc131<\/h2>\n<h3>\ud30c\uc774\uc36c \uc2e4\ud589\ud658\uacbd \uc900\ube44<\/h3>\n<ol>\n<li><strong>\ud30c\uc774\uc36c \uc124\uce58<\/strong><p>\uc774 \ucf54\ub4dc\ub294 \ud30c\uc774\uc36c\uc744 \uae30\ubc18\uc73c\ub85c \uc791\ub3d9\ud55c\ub2e4. <a href=\"https:\/\/dotiromoook.tistory.com\/32\" title=\"\ud30c\uc774\uc36c \uc124\uce58 \ud558\ub294 \ubc29\ubc95\" target=\"_blank\" hreflang=\"ko-kr\" rel=\"noopener\">\ud30c\uc774\uc36c \uc124\uce58 \ubc29\ubc95<\/a>\uacfc \uac19\uc740 \uae00\uc744 \ucc38\uace0\ud558\uc5ec \uc11c\ubc84\ub85c \uc0ac\uc6a9\ud560 PC\uc5d0 \ud30c\uc774\uc36c\uc744 \uc124\uce58\ud55c\ub2e4.<\/p><\/li>\n<li><strong>\ucd94\uac00 \ud328\ud0a4\uc9c0 \uc124\uce58<\/strong><p>\ub2e4\uc74c\uc758 \uba85\ub839\uc5b4\ub97c \ud1b5\ud574 \ud504\ub85c\uadf8\ub7a8\uc758 \uc2e4\ud589\uc5d0 \ud544\uc694\ud55c <code>cryptography<\/code>\ud328\ud0a4\uc9c0\ub97c \uc124\uce58\ud574 \uc900\ub2e4.<\/p><code class=\"line\">py -m pip install cryptography<\/code><\/li>\n<li><strong>\ud504\ub85c\uadf8\ub7a8 \ud30c\uc77c \uc0dd\uc131<\/strong><p>\uc801\ub2f9\ud55c \ub514\ub809\ud1a0\ub9ac\ub97c \uc0dd\uc131\ud558\uace0, \uc544\ub798\uc758 \ucf54\ub4dc \ub0b4\uc6a9\uc744 \ubcf5\uc0ac\ud574 <code>GenCert.py<\/code>\ub77c\ub294 \ud30c\uc77c\ub85c \uc800\uc7a5\ud574 \uc900\ub2e4.<\/p>\n<pre><code>from cryptography import x509\nfrom cryptography.x509.oid import NameOID\nfrom cryptography.hazmat.primitives import hashes\nfrom cryptography.hazmat.primitives.asymmetric import rsa\nfrom cryptography.hazmat.primitives import serialization\nimport datetime\n\n# \ub3c4\uba54\uc778 \uc774\ub984\uc744 \uc5ec\uae30\uc5d0 \ub123\uc5b4\uc900\ub2e4. \uc774 \uc8fc\uc18c\uac00 \uc2a4\ud2b8\ub9ac\ubc0d \ud504\ub85c\uadf8\ub7a8\uc5d0 \uc785\ub825\ub420 \uc8fc\uc18c\uc774\ub2e4.\ndomain_name = u\"b.upload.youtube.com\"\n\n# 1. \uac1c\uc778 \ud0a4 \uc0dd\uc131\nkey = rsa.generate_private_key(\n    public_exponent=65537,\n    key_size=2048,\n)\n\n# 2. \uac1c\uc778 \ud0a4\ub97c \ud30c\uc77c\uc5d0 \uc800\uc7a5 (key.pem)\nwith open(\"key.pem\", \"wb\") as f:\n    f.write(key.private_bytes(\n        encoding=serialization.Encoding.PEM,\n        format=serialization.PrivateFormat.TraditionalOpenSSL,\n        encryption_algorithm=serialization.NoEncryption(),\n    ))\n\n# 3. \uc790\uccb4 \uc11c\uba85\uc744 \uc704\ud55c \uc778\uc99d\uc11c \uc815\ubcf4 \uc124\uc815 (Common Name\uc744 \uc218\uc815)\nsubject = issuer = x509.Name([\n    x509.NameAttribute(NameOID.COUNTRY_NAME, u\"KR\"),\n    x509.NameAttribute(NameOID.STATE_OR_PROVINCE_NAME, u\"Gyeonggi-do\"),\n    x509.NameAttribute(NameOID.LOCALITY_NAME, u\"Hanam-si\"),\n    x509.NameAttribute(NameOID.ORGANIZATION_NAME, u\"DectENG\"),\n    x509.NameAttribute(NameOID.COMMON_NAME, domain_name),\n])\n\n# 4. \uc778\uc99d\uc11c \uc0dd\uc131 \ubc0f \uc11c\uba85\ncert = x509.CertificateBuilder().subject_name(\n    subject\n).issuer_name(\n    issuer\n).public_key(\n    key.public_key()\n).serial_number(\n    x509.random_serial_number()\n).not_valid_before(\n    datetime.datetime.now(datetime.timezone.utc)\n).not_valid_after(\n    datetime.datetime.now(datetime.timezone.utc) + datetime.timedelta(days=365)\n).add_extension(\n    x509.SubjectAlternativeName([x509.DNSName(domain_name)]),\n    critical=False,\n).sign(key, hashes.SHA256())\n\n# 5. \uc778\uc99d\uc11c\ub97c \ud30c\uc77c\uc5d0 \uc800\uc7a5 (cert.pem)\nwith open(\"cert.pem\", \"wb\") as f:\n    f.write(cert.public_bytes(serialization.Encoding.PEM))\n\nprint(f\"'{domain_name}'  cert.pem \/ key.pem \uc0dd\uc131\ub428.\")\n<\/code><\/pre>\n<samp>b.upload.youtube.com<\/samp> \ubd80\ubd84\uc5d0 \uc0ac\uc6a9\ud558\uace0\uc790 \ud558\ub294 \uc778\ud130\ub137 \uc8fc\uc18c \ud639\uc740, IP \uc8fc\uc18c\ub97c \uc785\ub825\ud574 \uc900\ub2e4.<\/li>\n<li><strong>\ud504\ub85c\uadf8\ub7a8 \uc2e4\ud589<\/strong><p>\ucf58\uc194 \ucc3d\uc5d0\uc11c <code>GenCert.py<\/code>\ud30c\uc77c\uc774 \uc788\ub294 \ub514\ub809\ud1a0\ub9ac\ub85c \uc774\ub3d9\ud574 \ucf54\ub4dc\ub97c \uc2e4\ud589\uc2dc\ucf1c \uc900\ub2e4. \uc544\ub798\uc640 \uac19\uc774, <samp>\uc0dd\uc131\ub428<\/samp>\uc774\ub77c\ub294 \uba54\uc2dc\uc9c0\uac00 \ucd9c\ub825\ub418\uba74 \uc815\uc0c1\uc801\uc73c\ub85c \uc554\ud638\ud0a4\uc640 \uc778\uc99d\uc11c\uac00 \uc0dd\uc131 \ub418\uc5c8\ub2e4\ub294 \uc758\ubbf8\uc774\ub2e4.<\/p>\n<pre><samp>Microsoft Windows [Version 10.0.20348.4052]\n(c) Microsoft Corporation. All rights reserved.\nD:\\><kbd>cd HLSWEB<\/kbd>\nD:\\HLSWEB><kbd>py GenCert.py<\/kbd>\n'b.upload.youtube.com' cert.pem \/ key.pem \uc0dd\uc131\ub428.<\/samp><\/pre><\/li>\n<li>\uc0dd\uc131\ub41c <code>cert.pem<\/code> \ud30c\uc77c\uacfc <code>key.pem<\/code>\ud30c\uc77c\uc744 <code>PushCap.py<\/code> \uc2e4\ud589 \ub514\ub809\ud1a0\ub9ac\ub85c \ubcf5\uc0ac\ud55c\ub2e4.<\/li>\n<\/ol>\n<p><code>OBS<\/code>\uc640 \uac19\uc774, \ubcc4\ub3c4\uc758 \uc778\uc99d\uc11c\uc640 \ud0a4 \uac80\uc99d \uae30\ub2a5\uc774 \uc5c6\ub294 \uc2a4\ud2b8\ub9ac\ubc0d \ud504\ub85c\uadf8\ub7a8\uc744 \uc0ac\uc6a9\ud558\uace0 \uc788\ub2e4\uba74, HTTPS HLS PUSH \uc2a4\ud2b8\ub9bc\uc744 \uc804\uc1a1\ud560 \uc218 \uc788\uac8c \ub41c\ub2e4.<\/p>\n<\/ol>\n<\/section>\n\n<section>\n<h2>\uc640\uc6b0\uc790 \uc2a4\ud2b8\ub9ac\ubc0d \uc5d4\uc9c4\uc5d0 \uc0ac\uc124 \uc778\uc99d\uc11c \uc801\uc6a9\ud558\uae30<\/h2>\n<p>\uc640\uc6b0\uc790 \uc2a4\ud2b8\ub9ac\ubc0d \uc5d4\uc9c4\uacfc \uac19\uc740 \uc0c1\uc5c5\uc6a9 \uc2a4\ud2b8\ub9ac\ubc0d \ud504\ub85c\uadf8\ub7a8\uc758 \uacbd\uc6b0, \uc778\uc99d\uc11c\ub97c \uc790\uccb4\uc801\uc73c\ub85c \ucd94\uac00\ub85c \uac80\uc99d\ud558\ub294 \uc808\ucc28\uac00 \uc788\uc5b4 \uc0ac\uc124 \uc778\uc99d\uc11c\ub97c \uc0ac\uc6a9\ud560 \uc218 \uc5c6\ub2e4. \ub54c\ubb38\uc5d0 \uc640\uc6b0\uc790\uc758 \uacbd\uc6b0, \uc0dd\uc131\ud55c \uc778\uc99d\uc11c\ub97c \uc2e0\ub8b0\ud560 \uc218 \uc788\ub294 \uc778\uc99d\uc11c\ub85c \ub4f1\ub85d\uc2dc\ucf1c\uc8fc\ub294 \uc808\ucc28\uac00 \ud544\uc694\ud558\ub2e4.<\/p>\n<ol><li><strong>\uc640\uc6b0\uc790 \uc11c\ube44\uc2a4 \uc815\uc9c0<\/strong> : \uc640\uc6b0\uc790 \uc2a4\ud2b8\ub9ac\ubc0d \uc5d4\uc9c4 \uc11c\ube44\uc2a4\ub97c \uc815\uc9c0\uc2dc\ud0a8\ub2e4.<\/li>\n<li><strong>\ucf58\uc194 \uc811\uc18d<\/strong> : \uad00\ub9ac\uc790 \uad8c\ud55c\uc744 \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 \ucf58\uc194(\ub3c4\uc2a4\ucc3d \ub4f1)\uc744 \uc5f0\ub2e4.<\/li>\n<li><strong>\uc790\ubc14 \ub3c4\uad6c \ub514\ub809\ud1a0\ub9ac \uc774\ub3d9<\/strong><p>\uc640\uc6b0\uc790 \uc2a4\ud2b8\ub9ac\ubc0d \uc5d4\uc9c4\uc744 \uc124\uce58\ud558\uba70 \ud568\uaed8 \uc124\uce58\ub418\ub294 \uc790\ubc14 \ub3c4\uad6c \ub514\ub809\ud1a0\ub9ac\ub85c \uc774\ub3d9\ud55c\ub2e4. \uae30\ubcf8 \uacbd\ub85c\ub294 <code>[\uc640\uc6b0\uc790 \uae30\ubcf8 \uc124\uce58 \uacbd\ub85c]\/jre\/bin<\/code> \uc774\ub2e4.<\/li>\n<li><strong>\uc778\uc99d\uc11c \ud30c\uc77c \ub4f1\ub85d<\/strong><p>\ub2e4\uc74c\uc758 \uba85\ub839\uc744 \uc785\ub825\ud574 \uc778\uc99d\uc11c \ud30c\uc77c\uc744 \ub4f1\ub85d\ud574 \uc900\ub2e4.<\/p>\n<kbd style=\"line\">keytool -importcert -alias \"[\uc778\uc99d\uc11c \uc774\ub984]\" -keystore \"[\uc778\uc99d\uc11c \uc800\uc7a5\uc18c]\" -storepass changeit -file \"[\uc778\uc99d\uc11c \ud30c\uc77c]\"<\/kbd>\n<p>\n<dl><dt>[\uc778\uc99d\uc11c \uc774\ub984]<\/dt><dd>\uc640\uc6b0\uc790 \uc2a4\ud2b8\ub9ac\ubc0d \uc5d4\uc9c4\uc5d0\uc11c \uc0ac\uc6a9\ud560 \uc778\uc99d\uc11c\uc758 \uc774\ub984\uc73c\ub85c, \uc0ac\uc6a9\uc790\uac00 \uc784\uc758\ub85c \uc9c0\uc815\ud560 \uc218 \uc788\ub2e4.<\/dd>\n<dt>[\uc778\uc99d\uc11c \uc800\uc7a5\uc18c]<\/dt><dd>\uc778\uc99d\uc11c\uac00 \uc800\uc7a5\ub420 \uc704\uce58\ub85c, \uc640\uc6b0\uc790\uac00 \uc0ac\uc6a9\ud558\ub294 JRE \ub514\ub809\ud1a0\ub9ac \ub0b4\ubd80\uc758 \uc778\uc99d\uc11c \uc800\uc7a5\uc18c \uc704\uce58\ub85c, \uae30\ubcf8 \uacbd\ub85c\ub294 <code>[\uc640\uc6b0\uc790 \uc124\uce58 \uacbd\ub85c]\\jre\\lib\\security\\cacerts<\/code>\uc774\ub2e4. <\/dd>\n<dt>[\uc778\uc99d\uc11c \ud30c\uc77c]<\/dt><dd>\ub4f1\ub85d\ud560 \uc778\uc99d\uc11c \ud30c\uc77c (<code>.pem<\/code>)\uc758 \uacbd\ub85c\uc640 \ud30c\uc77c \uc774\ub984<\/dd><\/dl><\/li><\/ol>\n<\/p>\n\n<h3>\uc640\uc6b0\uc790 \uc2a4\ud2b8\ub9ac\ubc0d \uc5d4\uc9c4\uc5d0 \uc778\uc99d\uc11c\ub97c \uc801\uc6a9\ud558\ub294 \uc608<\/h3>\n<p>\uc708\ub3c4\uc6b0 \ud658\uacbd\uc758 \uc640\uc6b0\uc790 \uc2a4\ud2b8\ub9ac\ubc0d \uc5d4\uc9c4\uc5d0 \uc0ac\uc124 \uc778\uc99d\uc11c\ub97c \uc801\uc6a9\ud558\ub294 \uc808\ucc28\uc758 \uc608\ub85c, \ud658\uacbd\uc740 \ub2e4\uc74c\uacfc \uac19\ub2e4.<\/p>\n<dl>\n<dt>\uc6b4\uc601\uccb4\uc81c<\/dt><dd>\uc708\ub3c4\uc6b0 \uc11c\ubc84 2022<\/dd>\n<dt>\uc640\uc6b0\uc790 \ubc84\uc804<\/dt><dd>4.8.25+2<\/dd>\n<dt>\uc778\uc99d\uc11c \ud30c\uc77c \uacbd\ub85c<\/dt><dd><code>D:\\HLSWEB\\cert.pem<\/code><\/dd>\n<\/dl>\n<ol>\n<li>\uad00\ub9ac\uc790 \uad8c\ud55c\uc73c\ub85c \ucf58\uc194\ucc3d (DOS\ucc3d)\uc744 \ub744\uc6b4\ub2e4.<\/li>\n<li><strong>\uc640\uc6b0\uc790 \uc5d4\uc9c4 \uc11c\ube44\uc2a4 \uc815\uc9c0<\/strong><p><pre><samp>C:\\&gt;<kbd>sc stop WowzaStreamingEngine4825+2<\/kbd>\n\nSERVICE_NAME: WowzaStreamingEngine4825+2\n        TYPE               : 10  WIN32_OWN_PROCESS\n        STATE              : 3  STOP_PENDING\n                                (STOPPABLE, PAUSABLE, ACCEPTS_SHUTDOWN)\n        WIN32_EXIT_CODE    : 0  (0x0)\n        SERVICE_EXIT_CODE  : 0  (0x0)\n        CHECKPOINT         : 0x0\n        WAIT_HINT          : 0x7d0<\/samp><\/pre><\/p><\/li>\n<li><strong>\uc778\uc99d\uc11c \ub4f1\ub85d<\/strong><p><pre><samp>C:&gt;Program Files\\Wowza Media Systems\\Wowza Streaming Engine 4.8.25+2\\jre\\bin&gt;<kbd>keytool.exe -importcert -alias \"YouTubeLocal\" -keystore \"C:\\Program Files\\Wowza Media Systems\\Wowza Streaming Engine 4.8.25+2\\jre\\lib\\security\\cacerts\" -storepass changeit -file \"D:\\HLSWEB\\cert.pem\"<\/kbd>\nWarning: use -cacerts option to access cacerts keystore\nOwner: CN=b.upload.youtube.com, O=DectENG, L=Hanam-si, ST=Gyeonggi-do, C=KR\nIssuer: CN=b.upload.youtube.com, O=DectENG, L=Hanam-si, ST=Gyeonggi-do, C=KR\nSerial number: 389c81b7d9e5452c8cbace6436a99aff004376\nValid from: Mon Aug 25 23:34:59 KST 2025 until: Tue Aug 25 23:34:59 KST 2026\nCertificate fingerprints:\n         SHA1: AA:BB:CC:DD:EE:FF:AA:BB:CC:DD:EE:FF:65:33:A0:A8:44:55:C0:54\n         SHA256: AA:BB:CC:DD:EE:FF:AA:BB:CC:DD:EE:FF:GG:AA:BB:CC:DD:EE:25:9E:AD:00:54:DE:D0:AE:52:97:1C:A1:85:59\nSignature algorithm name: SHA256withRSA\nSubject Public Key Algorithm: 2048-bit RSA key\nVersion: 3\n\nExtensions:\n\n#1: ObjectId: 2.5.29.17 Criticality=false\nSubjectAlternativeName [\n  DNSName: b.upload.youtube.com\n]\n\nTrust this certificate? [no]:  <kbd>yes<\/kbd>\nCertificate was added to keystore<\/samp><\/pre><\/li>\n\n<li><strong>\uc778\uc99d\uc11c \ub4f1\ub85d \ud655\uc778<\/strong>\n<p><pre><samp>C:\\Program Files\\Wowza Media Systems\\Wowza Streaming Engine 4.8.25+2\\jre\\bin><kbd>keytool -list -cacerts<\/kbd>\nEnter keystore password:<kbd>Enter<\/kbd>\n\n*****************  WARNING WARNING WARNING  *****************\n* The integrity of the information stored in your keystore  *\n* has NOT been verified!  In order to verify its integrity, *\n* you must provide your keystore password.                  *\n*****************  WARNING WARNING WARNING  *****************\n\nKeystore type: JKS\nKeystore provider: SUN\n\nYour keystore contains 93 entries\n\n... (\uc804\ub7b5) ...\nyoutubelocal, 2025 Aug 26, trustedCertEntry,\nCertificate fingerprint (SHA-256): AA:BB:CC:DD:EE:FF:AA:BB:CC:DD:EE:FF:GG:AA:BB:CC:DD:EE:25:9E:AD:00:54:DE:D0:AE:52:97:1C:A1:85:59\n... (\uc0dd\ub7b5) ...<\/samp><\/pre>\n<p>\uc704\uc640 \uac19\uc774 \ub4f1\ub85d\ud55c \uc774\ub984\uc758 \uc778\uc99d\uc11c (\uc774 \uc608\uc5d0\uc11c\ub294 <samp>youtubelocal<\/samp>)\uac00 \uc874\uc7ac\ud558\uba74 \uc815\uc0c1\uc801\uc73c\ub85c \ub4f1\ub85d\ub418\uc5c8\ub2e4\ub294 \uc758\ubbf8\uc774\ub2e4.<\/p><\/li>\n<li><strong>\uc640\uc6b0\uc790 \uc5d4\uc9c4 \uc11c\ube44\uc2a4 \uc7ac\uc2dc\uc791<\/strong><p><pre><samp>C:\\&gt;<kbd>sc start WowzaStreamingEngine4825+2<\/kbd>\nSERVICE_NAME: WowzaStreamingEngine4825+2\n        TYPE               : 10  WIN32_OWN_PROCESS\n        STATE              : 2  START_PENDING\n                                (NOT_STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)\n        WIN32_EXIT_CODE    : 0  (0x0)\n        SERVICE_EXIT_CODE  : 0  (0x0)\n        CHECKPOINT         : 0x0\n        WAIT_HINT          : 0x7d0\n        PID                : 4356\n        FLAGS              :<\/samp><\/pre><\/li><\/ol>\n<\/section>\n\n<h2>\uacb0\ub860<\/h2>\n<p>HLS PUSH \ub97c \ucea1\ucc98\ud574 \ub514\ubc84\uadf8\ud558\uae30 \uc704\ud55c <code>PushCap<\/code>\uc740 https \ud1b5\uc2e0\uc744 \uc704\ud55c \uc778\uc99d\uc11c\uacfc \ud0a4\ub97c \uc0dd\uc131\ud574 \uc8fc\uc5b4\uc57c \ud55c\ub2e4. \uc774\ub807\uac8c \uc0dd\uc131\ub41c \uc0ac\uc124 \uc778\uc99d\uc11c\uc640 \ud0a4\ub294, \ubcc4\ub3c4\uc758 \uac80\uc99d\uc744 \ud558\uc9c0 \uc54a\ub294 <code>OBS<\/code>\uc640 \uac19\uc740 \ub3c4\uad6c\uc5d0\uc11c\ub294 \ubb38\uc81c \uc5c6\uc774 \uc0ac\uc6a9\ub418\uc9c0\ub9cc, \uc640\uc6b0\uc790 \uc2a4\ud2b8\ub9ac\ubc0d \uc5d4\uc9c4\uacfc \uac19\uc774 \ub0b4\ubd80\uc758 \uac80\uc99d\uc808\ucc28\uac00 \uc788\ub294 \ub3c4\uad6c\uc5d0\uc11c\ub294 \uc2e0\ub8b0\ud560 \uc218 \uc788\ub294 \uc778\uc99d\uc11c\ub85c \ub4f1\ub85d\ud574 \uc8fc\uc5b4\uc57c \uc0ac\uc6a9\uc774 \uac00\ub2a5\ud558\ub2e4.<\/p>\n<p>\uac04\ub2e8\ud558\uac8c \ud30c\uc774\uc36c\uc744 \uc774\uc6a9\ud574 \uc778\uc99d\uc11c\uc640 \uc554\ud638\ud0a4\ub97c \uc0dd\uc131\ud558\uace0, \uc790\ubc14\uc758 \uc2e0\ub8b0\ud560 \uc218 \uc788\ub294 \uc778\uc99d\uc11c\ub85c \ub3d9\uc791\ud558\ub294 \uc808\ucc28\ub97c \ud1b5\ud574 \uc640\uc6b0\uc790 \uc2a4\ud2b8\ub9ac\ubc0d \uc5d4\uc9c4\uc758 https \uc2a4\ud2b8\ub9ac\ubc0d \ub370\uc774\ud130\ub97c \uc6d0\ud558\ub294 \uacf3\uc73c\ub85c \uc804\uc1a1\ud558\ub294 \uac83\uc774 \uac00\ub2a5\ud574 \uc9c4\ub2e4.<\/p>\n<p>\ubcf8 \uae00\uc744 \ud1b5\ud574, \uc11c\ubc84\uc758 \ubb38\uc81c\ub97c \ud574\uacb0\ud558\uace0 \uc2e4\uc81c \uc2a4\ud2b8\ub9ac\ubc0d \ub370\uc774\ud130\uc758 \uac80\uc99d \uc791\uc5c5\uc744 \ud574\uc57c\ud558\ub294 \ub3c5\uc790 \uc81c\uc704\uc5d0\uac8c \uc791\uc740 \ub3c4\uc6c0\uc774 \ub418\uae30\ub97c \ubc14\ub77c\ub294 \ubc14 \uc774\ub2e4.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>HLS PUSH\ub294 https \ud504\ub85c\ud1a0\ucf5c\uc744 \uc774\uc6a9\ud574 \ub370\uc774\ud130\ub97c \uc804\uc1a1\ud558\uba70 \uc778\uc99d\uc11c\ub97c \ud1b5\ud574 \uc11c\ubc84\uc758 \uc9c4\uc704\uc5ec\ubd80\ub97c \ud655\uc778\ud55c\ub2e4. \ud30c\uc774\uc36c\uc744 \uc774\uc6a9\ud574 \uc0ac\uc124 \uc778\uc99d\uc11c\ub97c \uc0dd\uc131\ud558\uace0, \uc640\uc6b0\uc790 \uc2a4\ud2b8\ub9ac\ubc0d \uc5d4\uc9c4\uc5d0 \uc801\uc6a9\ud574 HLS PUSH \uc2a4\ud2b8\ub9bc \ub370\uc774\ud130\ub97c PushCap \uac1c\ubc1c \uc11c\ubc84\uc5d0\uc11c \uc218\uc2e0\ud558\ub294 \ubc29\ubc95\uc744 \uc124\uba85\ud55c\ub2e4.<\/p>\n","protected":false},"author":1,"featured_media":1173,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[66,172,39,68,22,25,128,9,67,30,13],"class_list":{"0":"post-1174","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-ott","8":"tag-hls","9":"tag-https","10":"tag-obs","11":"tag-develop","12":"tag-experience","13":"tag-live-streaming","14":"tag-system-security","15":"tag-wowzastreamingengine","16":"tag-youtube","17":"tag-java","18":"tag-procedure","19":"content-layout-excerpt-thumb"},"_links":{"self":[{"href":"https:\/\/www.decteng.com\/ko\/wp-json\/wp\/v2\/posts\/1174","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.decteng.com\/ko\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.decteng.com\/ko\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.decteng.com\/ko\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.decteng.com\/ko\/wp-json\/wp\/v2\/comments?post=1174"}],"version-history":[{"count":7,"href":"https:\/\/www.decteng.com\/ko\/wp-json\/wp\/v2\/posts\/1174\/revisions"}],"predecessor-version":[{"id":1187,"href":"https:\/\/www.decteng.com\/ko\/wp-json\/wp\/v2\/posts\/1174\/revisions\/1187"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.decteng.com\/ko\/wp-json\/wp\/v2\/media\/1173"}],"wp:attachment":[{"href":"https:\/\/www.decteng.com\/ko\/wp-json\/wp\/v2\/media?parent=1174"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.decteng.com\/ko\/wp-json\/wp\/v2\/categories?post=1174"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.decteng.com\/ko\/wp-json\/wp\/v2\/tags?post=1174"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}