<extensionManifest><groupId>org.apache.nifi</groupId><artifactId>nifi-cipher-nar</artifactId><version>1.22.0</version><parentNar><groupId>org.apache.nifi</groupId><artifactId>nifi-standard-services-api-nar</artifactId><version>1.22.0</version></parentNar><systemApiVersion>1.22.0</systemApiVersion><buildInfo><tag>nifi-1.22.0-RC1</tag><branch>UNKNOWN</branch><revision>71e3ea9</revision></buildInfo><extensions><extension><name>org.apache.nifi.processors.cipher.DecryptContent</name><type>PROCESSOR</type><description>Decrypt content encrypted with AES and encoded according conventions added in NiFi 0.5.0 for the EncryptContent Processor. The Processor reads the first 256 bytes to determine the presence of a cryptographic salt based on finding the 'NiFiSALT' delimiter. The salt is not present for content encrypted with a raw hexadecimal key. The Processor determines the presence of the initialization vector based on finding the 'NiFiIV' delimiter.The salt format indicates the Key Derivation Function that the Processor uses to generate a secret key based on a configured password. The Processor derives keys with a size of 128 bits according to the conventions implemented in NiFi 0.5.0.</description><tags><tag>cryptography</tag><tag>decipher</tag><tag>decrypt</tag><tag>AES</tag><tag>Argon2</tag><tag>bcrypt</tag><tag>scrypt</tag><tag>PBKDF2</tag></tags><properties><property><name>cipher-algorithm-mode</name><displayName>Cipher Algorithm Mode</displayName><description>Block cipher mode of operation for decryption using the Advanced Encryption Standard</description><defaultValue>GCM</defaultValue><allowableValues><allowableValue><displayName>CBC</displayName><value>CBC</value><description>Cipher Blocking Chaining Mode</description></allowableValue><allowableValue><displayName>CTR</displayName><value>CTR</value><description>Counter Mode</description></allowableValue><allowableValue><displayName>GCM</displayName><value>GCM</value><description>Galois/Counter Mode supporting Authenticated Encryption with Associated Data</description></allowableValue></allowableValues><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>cipher-algorithm-padding</name><displayName>Cipher Algorithm Padding</displayName><description>Padding specification used in cipher operation for decryption using the Advanced Encryption Standard</description><defaultValue>NoPadding</defaultValue><allowableValues><allowableValue><displayName>NoPadding</displayName><value>NoPadding</value><description>NoPadding</description></allowableValue><allowableValue><displayName>PKCS5Padding</displayName><value>PKCS5Padding</value><description>PKCS5Padding</description></allowableValue></allowableValues><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>key-specification-format</name><displayName>Key Specification Format</displayName><description>Format describing the configured Key Specification</description><defaultValue>PASSWORD</defaultValue><allowableValues><allowableValue><displayName>RAW</displayName><value>RAW</value><description>Raw secret key provided as a hexadecimal string</description></allowableValue><allowableValue><displayName>PASSWORD</displayName><value>PASSWORD</value><description>Password string for use with a Key Derivation Function to produce a secret key</description></allowableValue></allowableValues><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>key-specification</name><displayName>Key Specification</displayName><description>Specification providing the raw secret key or a password from which to derive a secret key</description><required>true</required><sensitive>true</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property></properties><relationships><relationship><name>success</name><description>Decryption succeeded</description><autoTerminated>false</autoTerminated></relationship><relationship><name>failure</name><description>Decryption failed</description><autoTerminated>false</autoTerminated></relationship></relationships><writesAttributes></writesAttributes><supportsBatching>true</supportsBatching><sideEffectFree>true</sideEffectFree><inputRequirement>INPUT_REQUIRED</inputRequirement></extension><extension><name>org.apache.nifi.processors.cipher.DecryptContentCompatibility</name><type>PROCESSOR</type><description>Decrypt content using password-based encryption schemes with legacy algorithms supporting historical compatibility modes.</description><tags><tag>cryptography</tag><tag>decipher</tag><tag>decrypt</tag><tag>Jasypt</tag><tag>OpenSSL</tag><tag>PKCS5</tag><tag>PBES1</tag></tags><properties><property><name>encryption-scheme</name><displayName>Encryption Scheme</displayName><description>Password-Based Encryption Scheme including PBES1 described in RFC 8018, and others defined according to PKCS12 and Bouncy Castle implementations</description><allowableValues><allowableValue><displayName>PBE_WITH_MD5_AND_AES_CBC_128</displayName><value>PBEWITHMD5AND128BITAES-CBC-OPENSSL</value><description>PKCS12 with MD5 digest and Advanced Encryption Standard in Cipher Block Chaining mode using 128 bit keys.</description></allowableValue><allowableValue><displayName>PBE_WITH_MD5_AND_AES_CBC_192</displayName><value>PBEWITHMD5AND192BITAES-CBC-OPENSSL</value><description>PKCS12 with MD5 digest and Advanced Encryption Standard in Cipher Block Chaining mode using 192 bit keys.</description></allowableValue><allowableValue><displayName>PBE_WITH_MD5_AND_AES_CBC_256</displayName><value>PBEWITHMD5AND256BITAES-CBC-OPENSSL</value><description>PKCS12 with MD5 digest and Advanced Encryption Standard in Cipher Block Chaining mode using 256 bit keys.</description></allowableValue><allowableValue><displayName>PBE_WITH_MD5_AND_DES</displayName><value>PBEWITHMD5ANDDES</value><description>PKCS5 Scheme 1 with MD5 digest and Data Encryption Standard 64 bit keys. OID 1.2.840.113549.1.5.3</description></allowableValue><allowableValue><displayName>PBE_WITH_MD5_AND_RC2</displayName><value>PBEWITHMD5ANDRC2</value><description>PKCS Scheme 1 with MD5 digest and Rivest Cipher 2. OID 1.2.840.113549.1.5.6</description></allowableValue><allowableValue><displayName>PBE_WITH_SHA1_AND_AES_CBC_128</displayName><value>PBEWITHSHAAND128BITAES-CBC-BC</value><description>PKCS12 with SHA-1 digest and Advanced Encryption Standard in Cipher Block Chaining mode using 128 bit keys.</description></allowableValue><allowableValue><displayName>PBE_WITH_SHA1_AND_AES_CBC_192</displayName><value>PBEWITHSHAAND192BITAES-CBC-BC</value><description>PKCS12 with SHA-1 digest and Advanced Encryption Standard in Cipher Block Chaining mode using 192 bit keys.</description></allowableValue><allowableValue><displayName>PBE_WITH_SHA1_AND_AES_CBC_256</displayName><value>PBEWITHSHAAND256BITAES-CBC-BC</value><description>PKCS12 with SHA-1 digest and Advanced Encryption Standard in Cipher Block Chaining mode using 256 bit keys.</description></allowableValue><allowableValue><displayName>PBE_WITH_SHA1_AND_DES</displayName><value>PBEWITHSHA1ANDDES</value><description>PKCS5 Scheme 1 with SHA-1 digest and Data Encryption Standard. OID 1.2.840.113549.1.5.10</description></allowableValue><allowableValue><displayName>PBE_WITH_SHA1_AND_DESEDE_128</displayName><value>PBEWITHSHAAND2-KEYTRIPLEDES-CBC</value><description>PKCS12 with SHA-1 digest and Triple Data Encryption Standard 128 bit keys. OID 1.2.840.113549.1.12.1.4</description></allowableValue><allowableValue><displayName>PBE_WITH_SHA1_AND_DESEDE_192</displayName><value>PBEWITHSHAAND3-KEYTRIPLEDES-CBC</value><description>PKCS12 with SHA-1 digest and Triple Data Encryption Standard 192 bit keys. OID 1.2.840.113549.1.12.1.3</description></allowableValue><allowableValue><displayName>PBE_WITH_SHA1_AND_RC2</displayName><value>PBEWITHSHA1ANDRC2</value><description>PKCS5 Scheme 1 with SHA-1 digest and Rivest Cipher 2. OID 1.2.840.113549.1.5.11</description></allowableValue><allowableValue><displayName>PBE_WITH_SHA1_AND_RC2_128</displayName><value>PBEWITHSHAAND128BITRC2-CBC</value><description>PKCS12 with SHA-1 digest and Rivest Cipher 2 128 bit keys. OID 1.2.840.113549.1.12.1.5</description></allowableValue><allowableValue><displayName>PBE_WITH_SHA1_AND_RC2_40</displayName><value>PBEWITHSHAAND40BITRC2-CBC</value><description>PKCS12 with SHA-1 digest and Rivest Cipher 2 40 bit keys. OID 1.2.840.113549.1.12.1.6</description></allowableValue><allowableValue><displayName>PBE_WITH_SHA1_AND_RC4_128</displayName><value>PBEWITHSHAAND128BITRC4</value><description>PKCS12 with SHA-1 digest and Rivest Cipher 4 128 bit keys. OID 1.2.840.113549.1.12.1.1</description></allowableValue><allowableValue><displayName>PBE_WITH_SHA1_AND_RC4_40</displayName><value>PBEWITHSHAAND40BITRC4</value><description>PKCS12 with SHA-1 digest and Rivest Cipher 4 40 bit keys. OID 1.2.840.113549.1.12.1.2</description></allowableValue><allowableValue><displayName>PBE_WITH_SHA1_AND_TWOFISH</displayName><value>PBEWITHSHAANDTWOFISH-CBC</value><description>PKCS12 with SHA-1 digest and Twofish in Cipher Block Chaining mode using 256 bit keys.</description></allowableValue><allowableValue><displayName>PBE_WITH_SHA256_AND_AES_CBC_128</displayName><value>PBEWITHSHA256AND128BITAES-CBC-BC</value><description>PKCS12 with SHA-256 digest and Advanced Encryption Standard in Cipher Block Chaining mode using 128 bit keys.</description></allowableValue><allowableValue><displayName>PBE_WITH_SHA256_AND_AES_CBC_192</displayName><value>PBEWITHSHA256AND192BITAES-CBC-BC</value><description>PKCS12 with SHA-256 digest and Advanced Encryption Standard in Cipher Block Chaining mode using 192 bit keys.</description></allowableValue><allowableValue><displayName>PBE_WITH_SHA256_AND_AES_CBC_256</displayName><value>PBEWITHSHA256AND256BITAES-CBC-BC</value><description>PKCS12 with SHA-256 digest and Advanced Encryption Standard in Cipher Block Chaining mode using 256 bit keys.</description></allowableValue></allowableValues><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>key-derivation-strategy</name><displayName>Key Derivation Strategy</displayName><description>Strategy for reading salt from encoded contents and deriving the decryption key according to the number of function iterations</description><allowableValues><allowableValue><displayName>OPENSSL_EVP_BYTES_TO_KEY</displayName><value>OPENSSL_EVP_BYTES_TO_KEY</value><description>OpenSSL Envelope BytesToKey using a digest algorithm with one iteration and optional salt of eight bytes</description></allowableValue><allowableValue><displayName>JASYPT_STANDARD</displayName><value>JASYPT_STANDARD</value><description>Jasypt Java Simplified Encryption using a digest algorithm with 1000 iterations and required salt of eight or sixteen bytes</description></allowableValue></allowableValues><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>password</name><displayName>Password</displayName><description>Password required for Password-Based Encryption Schemes</description><required>true</required><sensitive>true</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property></properties><relationships><relationship><name>success</name><description>Decryption succeeded</description><autoTerminated>false</autoTerminated></relationship><relationship><name>failure</name><description>Decryption failed</description><autoTerminated>false</autoTerminated></relationship></relationships><writesAttributes><writesAttribute><name>pbe.scheme</name><description>Password-Based Encryption Scheme</description></writesAttribute><writesAttribute><name>pbe.symmetric.cipher</name><description>Password-Based Encryption Block Cipher</description></writesAttribute><writesAttribute><name>pbe.digest.algorithm</name><description>Password-Based Encryption Digest Algorithm</description></writesAttribute></writesAttributes><supportsBatching>true</supportsBatching><sideEffectFree>true</sideEffectFree><inputRequirement>INPUT_REQUIRED</inputRequirement></extension><extension><name>org.apache.nifi.processors.cipher.VerifyContentMAC</name><type>PROCESSOR</type><description>Calculates a Message Authentication Code using the provided Secret Key and compares it with the provided MAC property</description><tags><tag>Authentication</tag><tag>Signing</tag><tag>MAC</tag><tag>HMAC</tag></tags><properties><property><name>mac-algorithm</name><displayName>Message Authentication Code Algorithm</displayName><description>Hashed Message Authentication Code Function</description><allowableValues><allowableValue><displayName>HmacSHA256</displayName><value>HmacSHA256</value><description></description></allowableValue><allowableValue><displayName>HmacSHA512</displayName><value>HmacSHA512</value><description></description></allowableValue></allowableValues><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>message-authentication-code-encoding</name><displayName>Message Authentication Code Encoding</displayName><description>Encoding of the Message Authentication Code</description><defaultValue>HEXADECIMAL</defaultValue><allowableValues><allowableValue><displayName>HEXADECIMAL</displayName><value>HEXADECIMAL</value><description></description></allowableValue><allowableValue><displayName>BASE64</displayName><value>BASE64</value><description></description></allowableValue></allowableValues><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>message-authentication-code</name><displayName>Message Authentication Code</displayName><description>The MAC to compare with the calculated value</description><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>true</expressionLanguageSupported><expressionLanguageScope>FLOWFILE_ATTRIBUTES</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>secret-key-encoding</name><displayName>Secret Key Encoding</displayName><description>Encoding of the Secret Key</description><defaultValue>HEXADECIMAL</defaultValue><allowableValues><allowableValue><displayName>UTF8</displayName><value>UTF8</value><description></description></allowableValue><allowableValue><displayName>HEXADECIMAL</displayName><value>HEXADECIMAL</value><description></description></allowableValue><allowableValue><displayName>BASE64</displayName><value>BASE64</value><description></description></allowableValue></allowableValues><required>true</required><sensitive>false</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property><property><name>secret-key</name><displayName>Secret Key</displayName><description>Secret key to calculate the hash</description><required>true</required><sensitive>true</sensitive><expressionLanguageSupported>false</expressionLanguageSupported><expressionLanguageScope>NONE</expressionLanguageScope><dynamicallyModifiesClasspath>false</dynamicallyModifiesClasspath><dynamic>false</dynamic></property></properties><relationships><relationship><name>success</name><description>Signature Verification Succeeded</description><autoTerminated>false</autoTerminated></relationship><relationship><name>failure</name><description>Signature Verification Failed</description><autoTerminated>false</autoTerminated></relationship></relationships><writesAttributes><writesAttribute><name>mac.calculated</name><description>Calculated Message Authentication Code encoded by the selected encoding</description></writesAttribute><writesAttribute><name>mac.encoding</name><description>The Encoding of the Hashed Message Authentication Code</description></writesAttribute><writesAttribute><name>mac.algorithm</name><description>Hashed Message Authentication Code Algorithm</description></writesAttribute></writesAttributes><supportsBatching>true</supportsBatching><inputRequirement>INPUT_REQUIRED</inputRequirement></extension></extensions></extensionManifest>