<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>282578</bug_id>
          
          <creation_ts>2024-11-04 17:01:05 -0800</creation_ts>
          <short_desc>[WebCrypto] X25519 allows unwrapping a non-extractable key as extractable</short_desc>
          <delta_ts>2025-10-11 03:57:04 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Bindings</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>282780</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Javier Fernandez">jfernandez</reporter>
          <assigned_to name="Javier Fernandez">jfernandez</assigned_to>
          <cc>cdumez</cc>
    
    <cc>jfernandez</cc>
    
    <cc>mehrdadm2m222</cc>
    
    <cc>nitinmahendru</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2072685</commentid>
    <comment_count>0</comment_count>
      <attachid>473138</attachid>
    <who name="Javier Fernandez">jfernandez</who>
    <bug_when>2024-11-04 17:01:05 -0800</bug_when>
    <thetext>Created attachment 473138
Test case to reproduce the bug

STEPS TO REPRODUCE THE PROBLEM
1- Load the attached test case 

EXPECTED RESULT

The last unwrapKey call should fail with the following error:

&quot;Unwrapping a non-extractable JWK as extractable fails as expected with DataError &quot;

ACTUAL RESULT

The unwrapKey succeeds and the following message is shown in the console:

&quot;CONSOLE LOG Unwrapping a non-extractable JWK as extractable succeeded, but it should not !&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2072686</commentid>
    <comment_count>1</comment_count>
    <who name="Javier Fernandez">jfernandez</who>
    <bug_when>2024-11-04 17:03:18 -0800</bug_when>
    <thetext>This is the root cause of the failure in the wrapKey_unwrapKey.https.any.html, shown in the wpt.fyi [1] 

https://wpt.fyi/results/WebCryptoAPI/wrapKey_unwrapKey/wrapKey_unwrapKey.https.any.html?label=experimental&amp;label=master&amp;aligned

WebKit is the only engine shown this error.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2072781</commentid>
    <comment_count>2</comment_count>
    <who name="Javier Fernandez">jfernandez</who>
    <bug_when>2024-11-05 06:59:56 -0800</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/36184</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2077472</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2024-11-24 21:45:09 -0800</bug_when>
    <thetext>&lt;rdar://problem/140525128&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2077473</commentid>
    <comment_count>4</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2024-11-24 21:45:43 -0800</bug_when>
    <thetext>The PR is still in Draft at this time.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2078770</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2024-12-03 03:53:53 -0800</bug_when>
    <thetext>Committed 287273@main (049cd4cf1bf9): &lt;https://commits.webkit.org/287273@main&gt;

Reviewed commits have been landed. Closing PR #36184 and removing active labels.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2150189</commentid>
    <comment_count>6</comment_count>
    <who name="">mehrdadm2m222</who>
    <bug_when>2025-10-11 03:57:04 -0700</bug_when>
    <thetext>(In reply to Radar WebKit Bug Importer from comment #3)
&gt; &lt;rdar://problem/140525128&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>473138</attachid>
            <date>2024-11-04 17:01:05 -0800</date>
            <delta_ts>2024-11-04 17:01:05 -0800</delta_ts>
            <desc>Test case to reproduce the bug</desc>
            <filename>wrap-unwrap-key-2.html</filename>
            <type>text/html</type>
            <size>8145</size>
            <attacher name="Javier Fernandez">jfernandez</attacher>
            
              <data encoding="base64">PCFkb2N0eXBlIGh0bWw+CjxzY3JpcHQ+CiAgICB2YXIgcGFyYW1ldGVycyA9IFsKICAgICAgICB7
CiAgICAgICAgICAgIG5hbWU6ICJBRVMtS1ciLAogICAgICAgICAgICBnZW5lcmF0ZVBhcmFtZXRl
cnM6IHtuYW1lOiAiQUVTLUtXIiwgbGVuZ3RoOiAxMjh9LAogICAgICAgICAgICB3cmFwUGFyYW1l
dGVyczoge25hbWU6ICJBRVMtS1cifQogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgICBu
YW1lOiAiUlNBLU9BRVAiLAogICAgICAgICAgICBnZW5lcmF0ZVBhcmFtZXRlcnM6IHtuYW1lOiAi
UlNBLU9BRVAiLCBtb2R1bHVzTGVuZ3RoOiA0MDk2LCBwdWJsaWNFeHBvbmVudDogbmV3IFVpbnQ4
QXJyYXkoWzEsMCwxXSksIGhhc2g6ICJTSEEtMjU2In0sCiAgICAgICAgICAgIHdyYXBQYXJhbWV0
ZXJzOiB7bmFtZTogIlJTQS1PQUVQIiwgbGFiZWw6IG5ldyBVaW50OEFycmF5KDgpfQogICAgICAg
IH0sCiAgICBdOwoKICAgIHZhciBzdWJ0bGUgPSBzZWxmLmNyeXB0by5zdWJ0bGU7CgogICAgZnVu
Y3Rpb24gd3JhcHBpbmdJc1Bvc3NpYmxlKGV4cG9ydGVkS2V5LCBhbGdvcml0aG1OYW1lKSB7CiAg
ICAgICAgaWYgKCJieXRlTGVuZ3RoIiBpbiBleHBvcnRlZEtleSAmJiBhbGdvcml0aG1OYW1lID09
PSAiQUVTLUtXIikgewogICAgICAgICAgICByZXR1cm4gZXhwb3J0ZWRLZXkuYnl0ZUxlbmd0aCAl
IDggPT09IDA7CiAgICAgICAgfQoKICAgICAgICBpZiAoImJ5dGVMZW5ndGgiIGluIGV4cG9ydGVk
S2V5ICYmIGFsZ29yaXRobU5hbWUgPT09ICJSU0EtT0FFUCIpIHsKICAgICAgICAgICAgLy8gUlNB
LU9BRVAgY2FuIG9ubHkgZW5jcnlwdCBwYXlsb2FkcyB3aXRoIGxlbmd0aHMgc2hvcnRlcgogICAg
ICAgICAgICAvLyB0aGFuIG1vZHVsdXNMZW5ndGggLSAyKmhhc2hMZW5ndGggLSAxIGJ5dGVzIGxv
bmcuIEZvcgogICAgICAgICAgICAvLyBhIDQwOTYgYml0IG1vZHVsdXMgYW5kIFNIQS0yNTYsIHRo
YXQgY29tZXMgdG8KICAgICAgICAgICAgLy8gNDA5Ni84IC0gMiooMjU2LzgpIC0gMSA9IDUxMiAt
IDIqMzIgLSAxID0gNDQ3IGJ5dGVzLgogICAgICAgICAgICByZXR1cm4gZXhwb3J0ZWRLZXkuYnl0
ZUxlbmd0aCA8PSA0NDY7CiAgICAgICAgfQoKICAgICAgICBpZiAoImt0eSIgaW4gZXhwb3J0ZWRL
ZXkgJiYgYWxnb3JpdGhtTmFtZSA9PT0gIkFFUy1LVyIpIHsKICAgICAgICAgICAgcmV0dXJuIEpT
T04uc3RyaW5naWZ5KGV4cG9ydGVkS2V5KS5sZW5ndGggJSA4ID09IDA7CiAgICAgICAgfQoKICAg
ICAgICBpZiAoImt0eSIgaW4gZXhwb3J0ZWRLZXkgJiYgYWxnb3JpdGhtTmFtZSA9PT0gIlJTQS1P
QUVQIikgewogICAgICAgICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoZXhwb3J0ZWRLZXkpLmxl
bmd0aCA8PSA0Nzg7CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgIH0KCiAgICAv
LyBBcmUgdHdvIGV4cG9ydGVkIGtleXMgZXF1YWwKICAgIGZ1bmN0aW9uIGVxdWFsRXhwb3J0KG9y
aWdpbmFsRXhwb3J0LCByb3VuZFRyaXBFeHBvcnQpIHsKICAgICAgICBpZiAoImJ5dGVMZW5ndGgi
IGluIG9yaWdpbmFsRXhwb3J0KSB7CiAgICAgICAgICAgIHJldHVybiBlcXVhbEJ1ZmZlcnMob3Jp
Z2luYWxFeHBvcnQsIHJvdW5kVHJpcEV4cG9ydCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAg
ICAgcmV0dXJuIGVxdWFsSndrKG9yaWdpbmFsRXhwb3J0LCByb3VuZFRyaXBFeHBvcnQpOwogICAg
ICAgIH0KICAgIH0KCiAgICAvLyBBcmUgdHdvIEp3ayBvYmplY3RzICJ0aGUgc2FtZSI/IFRoYXQg
aXMsIGRvZXMgdGhlIG9iamVjdCByZXR1cm5lZCBpbmNsdWRlCiAgICAvLyBtYXRjaGluZyB2YWx1
ZXMgZm9yIGVhY2ggcHJvcGVydHkgdGhhdCB3YXMgZXhwZWN0ZWQ/IEl0J3Mgb2theSBpZiB0aGUK
ICAgIC8vIHJldHVybmVkIG9iamVjdCBoYXMgZXh0cmEgbWV0aG9kczsgdGhleSBhcmVuJ3QgY2hl
Y2tlZC4KICAgIGZ1bmN0aW9uIGVxdWFsSndrKGV4cGVjdGVkLCBnb3QpIHsKICAgICAgICB2YXIg
ZmllbGRzID0gT2JqZWN0LmtleXMoZXhwZWN0ZWQpOwogICAgICAgIHZhciBmaWVsZE5hbWU7Cgog
ICAgICAgIGZvcih2YXIgaT0wOyBpPGZpZWxkcy5sZW5ndGg7IGkrKykgewogICAgICAgICAgICBm
aWVsZE5hbWUgPSBmaWVsZHNbaV07CiAgICAgICAgICAgIGlmICghKGZpZWxkTmFtZSBpbiBnb3Qp
KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICAg
ICAgaWYgKG9iamVjdFRvU3RyaW5nKGV4cGVjdGVkW2ZpZWxkTmFtZV0pICE9PSBvYmplY3RUb1N0
cmluZyhnb3RbZmllbGROYW1lXSkpIHsKICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAg
ICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIHRydWU7CiAgICB9CgogICAgLy8g
QXJlIHR3byBhcnJheSBidWZmZXJzIHRoZSBzYW1lPwogICAgZnVuY3Rpb24gZXF1YWxCdWZmZXJz
KGEsIGIpIHsKICAgICAgICBpZiAoYS5ieXRlTGVuZ3RoICE9PSBiLmJ5dGVMZW5ndGgpIHsKICAg
ICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KCiAgICAgICAgdmFyIGFCeXRlcyA9IG5l
dyBVaW50OEFycmF5KGEpOwogICAgICAgIHZhciBiQnl0ZXMgPSBuZXcgVWludDhBcnJheShiKTsK
CiAgICAgICAgZm9yICh2YXIgaT0wOyBpPGEuYnl0ZUxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAg
IGlmIChhQnl0ZXNbaV0gIT09IGJCeXRlc1tpXSkgewogICAgICAgICAgICAgICAgcmV0dXJuIGZh
bHNlOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgIH0K
CiAgICAvLyBDaGFyYWN0ZXIgcmVwcmVzZW50YXRpb24gb2YgYW55IG9iamVjdCB3ZSBtYXkgdXNl
IGFzIGEgcGFyYW1ldGVyLgogICAgZnVuY3Rpb24gb2JqZWN0VG9TdHJpbmcob2JqKSB7CiAgICAg
ICAgdmFyIGtleVZhbHVlUGFpcnMgPSBbXTsKCiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkob2Jq
KSkgewogICAgICAgICAgICByZXR1cm4gIlsiICsgb2JqLm1hcChmdW5jdGlvbihlbGVtKXtyZXR1
cm4gb2JqZWN0VG9TdHJpbmcoZWxlbSk7fSkuam9pbigiLCAiKSArICJdIjsKICAgICAgICB9IGVs
c2UgaWYgKHR5cGVvZiBvYmogPT09ICJvYmplY3QiKSB7CiAgICAgICAgICAgIE9iamVjdC5rZXlz
KG9iaikuc29ydCgpLmZvckVhY2goZnVuY3Rpb24oa2V5TmFtZSkgewogICAgICAgICAgICAgICAg
a2V5VmFsdWVQYWlycy5wdXNoKGtleU5hbWUgKyAiOiAiICsgb2JqZWN0VG9TdHJpbmcob2JqW2tl
eU5hbWVdKSk7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICByZXR1cm4gInsiICsga2V5VmFs
dWVQYWlycy5qb2luKCIsICIpICsgIn0iOwogICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIG9iaiA9
PT0gInVuZGVmaW5lZCIpIHsKICAgICAgICAgICAgcmV0dXJuICJ1bmRlZmluZWQiOwogICAgICAg
IH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiBvYmoudG9TdHJpbmcoKTsKICAgICAgICB9Cgog
ICAgICAgIHZhciBrZXlWYWx1ZVBhaXJzID0gW107CgogICAgICAgIE9iamVjdC5rZXlzKG9iaiku
c29ydCgpLmZvckVhY2goZnVuY3Rpb24oa2V5TmFtZSkgewogICAgICAgICAgICB2YXIgdmFsdWUg
PSBvYmpba2V5TmFtZV07CiAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICJvYmplY3Qi
KSB7CiAgICAgICAgICAgICAgICB2YWx1ZSA9IG9iamVjdFRvU3RyaW5nKHZhbHVlKTsKICAgICAg
ICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09ICJhcnJheSIpIHsKICAgICAgICAgICAg
ICAgIHZhbHVlID0gIlsiICsgdmFsdWUubWFwKGZ1bmN0aW9uKGVsZW0pe3JldHVybiBvYmplY3RU
b1N0cmluZyhlbGVtKTt9KS5qb2luKCIsICIpICsgIl0iOwogICAgICAgICAgICB9IGVsc2Ugewog
ICAgICAgICAgICAgICAgdmFsdWUgPSB2YWx1ZS50b1N0cmluZygpOwogICAgICAgICAgICB9Cgog
ICAgICAgICAgICBrZXlWYWx1ZVBhaXJzLnB1c2goa2V5TmFtZSArICI6ICIgKyB2YWx1ZSk7CiAg
ICAgICAgfSk7CgogICAgICAgIHJldHVybiAieyIgKyBrZXlWYWx1ZVBhaXJzLmpvaW4oIiwgIikg
KyAifSI7CiAgICB9CgogICAgdmFyIGZvcm1hdCA9ICJqd2siOwogICAgdmFyIHBhcmFtcyA9IHBh
cmFtZXRlcnNbMV07CiAgICB2YXIgb3JpZ2luYWxFeHBvcnQ7CiAgICBzdWJ0bGUuZ2VuZXJhdGVL
ZXkocGFyYW1zLmdlbmVyYXRlUGFyYW1ldGVycywgdHJ1ZSwgWyJ3cmFwS2V5IiwgInVud3JhcEtl
eSJdKQogICAgLnRoZW4oKHdyYXBwZXIpID0+IHsKICAgICAgICBpZiAocGFyYW1zLm5hbWUgPT09
ICJSU0EtT0FFUCIpIHsgLy8gd2UgaGF2ZSBhIGtleSBwYWlyLCBub3QganVzdCBhIGtleQogICAg
ICAgICAgICB3cmFwcGluZ0tleSA9IHdyYXBwZXIucHVibGljS2V5OwogICAgICAgICAgICB1bndy
YXBwaW5nS2V5PSB3cmFwcGVyLnByaXZhdGVLZXk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAg
ICAgd3JhcHBpbmdLZXkgPSB3cmFwcGVyOwogICAgICAgICAgICB1bndyYXBwaW5nS2V5PSB3cmFw
cGVyOwogICAgICAgIH0KICAgICAgICBzdWJ0bGUuZ2VuZXJhdGVLZXkoe25hbWU6ICJYMjU1MTki
fSwgdHJ1ZSwgWyJkZXJpdmVCaXRzIl0pCiAgICAgICAudGhlbigodG9XcmFwKSA9PiB7CiAgICAg
ICAgICAgc3VidGxlLmV4cG9ydEtleShmb3JtYXQsIHRvV3JhcC5wcml2YXRlS2V5KQogICAgICAg
ICAgIC50aGVuKChleHBvcnRlZEtleSkgPT4gewogICAgICAgICAgICAgICBvcmlnaW5hbEV4cG9y
dCA9IGV4cG9ydGVkS2V5OwogICAgICAgICAgICAgICBjb25zdCBpc1Bvc3NpYmxlID0gd3JhcHBp
bmdJc1Bvc3NpYmxlKG9yaWdpbmFsRXhwb3J0LCBwYXJhbXMubmFtZSk7CiAgICAgICAgICAgICAg
IGlmICghaXNQb3NzaWJsZSkgewogICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coICJXcmFw
cGluZyBpcyBub3QgcG9zc2libGUiKTsKICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICB2
YXIgd3JhcHBlZEtleTsKICAgICAgICAgICAgICAgd3JhcEFzTm9uRXh0cmFjdGFibGVKd2sodG9X
cmFwLnByaXZhdGVLZXksIHdyYXBwaW5nS2V5KQogICAgICAgICAgICAgICAudGhlbigod3JhcHBl
ZFJlc3VsdCkgPT4gewogICAgICAgICAgICAgICAgICAgd3JhcHBlZEtleSA9IHdyYXBwZWRSZXN1
bHQ7CiAgICAgICAgICAgICAgICAgICBzdWJ0bGUudW53cmFwS2V5KGZvcm1hdCwgd3JhcHBlZEtl
eSwgdW53cmFwcGluZ0tleSwgcGFyYW1zLndyYXBQYXJhbWV0ZXJzLCB7bmFtZTogIlgyNTUxOSJ9
LCBmYWxzZSwgWyJkZXJpdmVCaXRzIl0pCiAgICAgICAgICAgICAgICAgICAudGhlbigodW53cmFw
cGVkUmVzdWx0KSA9PiB7CiAgICAgICAgICAgICAgICAgICAgICAgaWYgKGVxdWFsRXhwb3J0KHRv
V3JhcC5wcml2YXRlS2V5LCB1bndyYXBwZWRSZXN1bHQpKQogICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zb2xlLmxvZygiVW53cmFwcGVkIGtleSBtYXRjaGVzIG9yaWdpbmFsIik7CiAgICAg
ICAgICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xl
LmxvZygiVW53cmFwcGVkIGtleSBkb2VzIG5vdCBtYXRjaCBvcmlnaW5hbCIpOwogICAgICAgICAg
ICAgICAgICAgICAgIHN1YnRsZS51bndyYXBLZXkoImp3ayIsIHdyYXBwZWRLZXksIHVud3JhcHBp
bmdLZXksIHBhcmFtcy53cmFwUGFyYW1ldGVycywge25hbWU6ICJYMjU1MTkifSwgdHJ1ZSwgWyJk
ZXJpdmVCaXRzIl0pCiAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oKCkgPT4gewogICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygiVW53cmFwcGluZyBhIG5vbi1leHRyYWN0
YWJsZSBKV0sgYXMgZXh0cmFjdGFibGUgc3VjY2VlZGVkLCBidXQgaXQgc2hvdWxkIG5vdCAhIik7
CiAgICAgICAgICAgICAgICAgICAgICAgfSwgZnVuY3Rpb24gKGVycikgewogICAgICAgICAgICAg
ICAgICAgICAgICAgICBpZiAoZXJyLm5hbWUgPT09ICJEYXRhRXJyb3IiKQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coIlVud3JhcHBpbmcgYSBub24tZXh0cmFjdGFi
bGUgSldLIGFzIGV4dHJhY3RhYmxlIGZhaWxzIGFzIGV4cGVjdGVkIHdpdGggRGF0YUVycm9yOiAi
ICsgZXJyLnRvU3RyaW5nKCkpOwogICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygiVW53cmFwcGluZyBhIG5vbi1l
eHRyYWN0YWJsZSBKV0sgYXMgZXh0cmFjdGFibGUgZmFpbGVkIHdpdGggYW4gdW5leHBlY3RlZCBl
cnJvcjogIiArIGVyci50b1N0cmluZygpKTsKICAgICAgICAgICAgICAgICAgICAgICB9KTsKICAg
ICAgICAgICAgICAgICAgIH0sIGZ1bmN0aW9uIChlcnIpIHsKICAgICAgICAgICAgICAgICAgICAg
ICBjb25zb2xlLmxvZygiVW53cmFwS2V5IEVycm9yOiAiICsgZXJyLnRvU3RyaW5nKCkpCiAgICAg
ICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgfSwgZnVuY3Rpb24gKGVycikgewogICAg
ICAgICAgICAgICAgICAgY29uc29sZS5sb2coIldyYXBLZXkgRXJyb3I6ICIgKyBlcnIudG9TdHJp
bmcoKSkKICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgfSwgZnVuY3Rpb24gKGVycikgewog
ICAgICAgICAgICBjb25zb2xlLmxvZygiRXhwb3J0ZWQgdG9XcmFwIGtleSBFcnJvcjogIiArIGVy
ci50b1N0cmluZygpKQogICAgICAgICAgIH0pOwogICAgICAgfSwgZnVuY3Rpb24gKGVycikgewog
ICAgICAgICAgIGNvbnNvbGUubG9nKCJHZW5lcmF0ZSB0b1dyYXAga2V5IEVycm9yOiAiICsgZXJy
LnRvU3RyaW5nKCkpCiAgICAgICB9KTsKICAgIH0sIGZ1bmN0aW9uIChlcnIpIHsKICAgICAgICBj
b25zb2xlLmxvZygiR2VuZXJhdGUgd3JhcHBlciBrZXkgRXJyb3I6ICIgKyBlcnIudG9TdHJpbmco
KSkKICAgIH0pOwoKICAgIC8vIEltcGxlbWVudCBrZXkgd3JhcHBpbmcgYnkgaGFuZCB0byB3cmFw
IGEga2V5IGFzIG5vbi1leHRyYWN0YWJsZSBKV0sKICAgIGZ1bmN0aW9uIHdyYXBBc05vbkV4dHJh
Y3RhYmxlSndrKGtleSwgd3JhcHBpbmdrZXkpewogICAgICAgIHZhciBlbmNyeXB0S2V5OwoKICAg
ICAgICByZXR1cm4gc3VidGxlLmV4cG9ydEtleSgiandrIiwgd3JhcHBpbmdLZXkpCiAgICAgICAg
LnRoZW4oZnVuY3Rpb24oandrV3JhcHBpbmdLZXkpewogICAgICAgICAgICAvLyBVcGRhdGUgdGhl
IGtleSBnZW5lcmF0aW9uIHBhcmFtZXRlcnMgdG8gd29yayBhcyBrZXkgaW1wb3J0IHBhcmFtZXRl
cnMKICAgICAgICAgICAgdmFyIHBhcmFtZXRlcnMgPSBPYmplY3QuY3JlYXRlKHBhcmFtcy5nZW5l
cmF0ZVBhcmFtZXRlcnMpOwogICAgICAgICAgICBwYXJhbWV0ZXJzLm1vZHVsdXNMZW5ndGggPSB1
bmRlZmluZWQ7CiAgICAgICAgICAgIHBhcmFtZXRlcnMucHVibGljRXhwb25lbnQgPSB1bmRlZmlu
ZWQ7CiAgICAgICAgICAgIGp3a1dyYXBwaW5nS2V5LmtleV9vcHMgPSBbImVuY3J5cHQiXTsKICAg
ICAgICAgICAgcmV0dXJuIHN1YnRsZS5pbXBvcnRLZXkoImp3ayIsIGp3a1dyYXBwaW5nS2V5LCBw
YXJhbWV0ZXJzLCB0cnVlLCBbImVuY3J5cHQiXSk7CiAgICAgICAgfSkudGhlbihmdW5jdGlvbihp
bXBvcnRlZFdyYXBwaW5nS2V5KXsKICAgICAgICAgICAgZW5jcnlwdEtleSA9IGltcG9ydGVkV3Jh
cHBpbmdLZXk7CiAgICAgICAgICAgIHJldHVybiBzdWJ0bGUuZXhwb3J0S2V5KCJqd2siLGtleSk7
CiAgICAgICAgfSkudGhlbihmdW5jdGlvbihleHBvcnRlZEtleSl7CiAgICAgICAgICAgIGV4cG9y
dGVkS2V5LmV4dCA9IGZhbHNlOwogICAgICAgICAgICB2YXIgandrID0gSlNPTi5zdHJpbmdpZnko
ZXhwb3J0ZWRLZXkpCiAgICAgICAgICAgIHJldHVybiBzdWJ0bGUuZW5jcnlwdChwYXJhbXMud3Jh
cFBhcmFtZXRlcnMsIGVuY3J5cHRLZXksIHN0cjJhYihqd2spKTsKICAgICAgICB9KTsKICAgIH0K
CiAgICBmdW5jdGlvbiBzdHIyYWIoc3RyKSAgICAgICAgeyByZXR1cm4gVWludDhBcnJheS5mcm9t
KCBzdHIuc3BsaXQoJycpLCBmdW5jdGlvbihzKXtyZXR1cm4gcy5jaGFyQ29kZUF0KDApfSApOyB9
CiAgICBmdW5jdGlvbiBhYjJzdHIoYWIpICAgICAgICAgeyByZXR1cm4gU3RyaW5nLmZyb21DaGFy
Q29kZS5hcHBseShudWxsLCBuZXcgVWludDhBcnJheShhYikpOyB9Cgo8L3NjcmlwdD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>