<sct-issuer-config>

	<cryptoProperties>
       <crypto provider="org.apache.ws.security.components.crypto.Merlin">
            <property name="org.apache.ws.security.crypto.merlin.keystore.type">JKS</property>
            <property name="org.apache.ws.security.crypto.merlin.file">META-INF/rahas-sts.jks</property>
            <property name="org.apache.ws.security.crypto.merlin.keystore.password">password</property>
        </crypto>
	</cryptoProperties>

	<addRequestedAttachedRef />
	<addRequestedUnattachedRef />

    <!--
       Key computation mechanism
       1 - Use Request Entropy
       2 - Provide Entropy
       3 - Use Own Key
    -->
    <keyComputation>3</keyComputation>

    <!--
       proofKeyType element is valid only if the keyComputation is set to 3
       i.e. Use Own Key

       Valid values are: EncryptedKey & BinarySecret
    -->
    <proofKeyType>BinarySecret</proofKeyType>
</sct-issuer-config>
