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

<bugzilla version="5.0.4"
          urlbase="https://www.w3.org/Bugs/Public/"
          
          maintainer="sysbot+bugzilla@w3.org"
>

    <bug>
          <bug_id>25661</bug_id>
          
          <creation_ts>2014-05-12 17:08:13 +0000</creation_ts>
          <short_desc>Allow algorithms to be implemented &quot;as if&quot;, rather than strict adherance</short_desc>
          <delta_ts>2014-06-16 23:13:58 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>Web Cryptography</product>
          <component>Web Cryptography API Document</component>
          <version>unspecified</version>
          <rep_platform>PC</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryan Sleevi">sleevi</reporter>
          <assigned_to name="Ryan Sleevi">sleevi</assigned_to>
          <cc>public-webcrypto</cc>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>105731</commentid>
    <comment_count>0</comment_count>
    <who name="Ryan Sleevi">sleevi</who>
    <bug_when>2014-05-12 17:08:13 +0000</bug_when>
    <thetext>The specification provides a variety of procedural steps (&quot;algorithms&quot;) that a UA is expected to implement to conform to the API. Because these steps are normative requirements, the specification would appear to be recommending a precise adherence to each of the individual steps.

This is not the intent of the editors or the WG, as it&apos;s meant to be permissable to implement in any manner a UA sees fit, provided that the external effects remain the same.

An example of such language is in the HTML spec, http://www.whatwg.org/specs/web-apps/current-work/multipage/infrastructure.html#conformance-requirements , which states

&quot;Conformance requirements phrased as algorithms or specific steps may be implemented in any manner, so long as the end result is equivalent. (In particular, the algorithms defined in this specification are intended to be easy to follow, and not intended to be performant.)&quot;

Such language is desirable, however, an ambiguity exists - not only is the &quot;end result&quot; expected to be equivalent, but the script-observable effects should also be equivalent.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>107888</commentid>
    <comment_count>1</comment_count>
    <who name="Ryan Sleevi">sleevi</who>
    <bug_when>2014-06-16 23:13:58 +0000</bug_when>
    <thetext>https://dvcs.w3.org/hg/webcrypto-api/rev/8db968b4673c</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>