1. 24 2月, 2017 1 次提交
    • M
      s390/crypt: Add protected key AES module · 27937843
      Martin Schwidefsky 提交于
      This patch introduces a new in-kernel-crypto blockcipher
      called 'paes' which implements AES with protected keys.
      The paes blockcipher can be used similar to the aes
      blockcipher but uses secure key material to derive the
      working protected key and so offers an encryption
      implementation where never a clear key value is exposed
      in memory.
      
      The paes module is only available for the s390 platform
      providing a minimal hardware support of CPACF enabled
      with at least MSA level 3. Upon module initialization
      these requirements are checked.
      
      Includes additional contribution from Harald Freudenberger.
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      27937843
  2. 23 2月, 2017 2 次提交
  3. 03 2月, 2017 5 次提交
  4. 02 2月, 2017 2 次提交
  5. 16 12月, 2016 2 次提交
    • R
      crypto: marvell - Copy IVDIG before launching partial DMA ahash requests · 8759fec4
      Romain Perier 提交于
      Currently, inner IV/DIGEST data are only copied once into the hash
      engines and not set explicitly before launching a request that is not a
      first frag. This is an issue especially when multiple ahash reqs are
      computed in parallel or chained with cipher request, as the state of the
      request being computed is not updated into the hash engine. It leads to
      non-deterministic corrupted digest results.
      
      Fixes: commit 2786cee8 ("crypto: marvell - Move SRAM I/O operations to step functions")
      Signed-off-by: NRomain Perier <romain.perier@free-electrons.com>
      Acked-by: NBoris Brezillon <boris.brezillon@free-electrons.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      8759fec4
    • G
      crypto: add virtio-crypto driver · dbaf0624
      Gonglei 提交于
      This patch introduces virtio-crypto driver for Linux Kernel.
      
      The virtio crypto device is a virtual cryptography device
      as well as a kind of virtual hardware accelerator for
      virtual machines. The encryption anddecryption requests
      are placed in the data queue and are ultimately handled by
      thebackend crypto accelerators. The second queue is the
      control queue used to create or destroy sessions for
      symmetric algorithms and will control some advanced features
      in the future. The virtio crypto device provides the following
      cryptoservices: CIPHER, MAC, HASH, and AEAD.
      
      For more information about virtio-crypto device, please see:
        http://qemu-project.org/Features/VirtioCrypto
      
      CC: Michael S. Tsirkin <mst@redhat.com>
      CC: Cornelia Huck <cornelia.huck@de.ibm.com>
      CC: Stefan Hajnoczi <stefanha@redhat.com>
      CC: Herbert Xu <herbert@gondor.apana.org.au>
      CC: Halil Pasic <pasic@linux.vnet.ibm.com>
      CC: David S. Miller <davem@davemloft.net>
      CC: Zeng Xin <xin.zeng@intel.com>
      Signed-off-by: NGonglei <arei.gonglei@huawei.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      dbaf0624
  6. 07 12月, 2016 5 次提交
  7. 01 12月, 2016 2 次提交
    • A
      crypto: caam - make aamalg_desc a proper module · 37d84681
      Arnd Bergmann 提交于
      The drivers/crypto/caam/ directory is entered during build only
      for building modules when CONFIG_CRYPTO_DEV_FSL_CAAM=m, but
      CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API_DESC is defined as a
      'bool' symbol, meaning that caamalg_desc.c is always compiled
      into built-in code, or not at all, leading to a link failure:
      
      ERROR: "cnstr_shdsc_xts_ablkcipher_decap" [drivers/crypto/caam/caamalg.ko] undefined!
      ERROR: "cnstr_shdsc_xts_ablkcipher_encap" [drivers/crypto/caam/caamalg.ko] undefined!
      ERROR: "cnstr_shdsc_aead_givencap" [drivers/crypto/caam/caamalg.ko] undefined!
      ERROR: "cnstr_shdsc_aead_decap" [drivers/crypto/caam/caamalg.ko] undefined!
      ERROR: "cnstr_shdsc_aead_encap" [drivers/crypto/caam/caamalg.ko] undefined!
      ERROR: "cnstr_shdsc_aead_null_decap" [drivers/crypto/caam/caamalg.ko] undefined!
      ERROR: "cnstr_shdsc_aead_null_encap" [drivers/crypto/caam/caamalg.ko] undefined!
      ERROR: "cnstr_shdsc_rfc4106_decap" [drivers/crypto/caam/caamalg.ko] undefined!
      ERROR: "cnstr_shdsc_rfc4106_encap" [drivers/crypto/caam/caamalg.ko] undefined!
      ...
      
      Making caamalg_desc itself a loadable module fixes this configuration
      by ensuring the driver gets built. Aside from making the symbol
      'tristate', I'm adding appropriate module metadata here.
      
      Fixes: 8cea7b66 ("crypto: caam - refactor encryption descriptors generation")
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      37d84681
    • A
      crypto: caam - pass key buffers with typesafe pointers · 9c0bc511
      Arnd Bergmann 提交于
      The 'key' field is defined as a 'u64' and used for two different
      pieces of information: either to store a pointer or a dma_addr_t.
      The former leads to a build error on 32-bit machines:
      
      drivers/crypto/caam/caamalg_desc.c: In function 'cnstr_shdsc_aead_null_encap':
      drivers/crypto/caam/caamalg_desc.c:67:27: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
      drivers/crypto/caam/caamalg_desc.c: In function 'cnstr_shdsc_aead_null_decap':
      drivers/crypto/caam/caamalg_desc.c:143:27: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
      
      Using a union to provide correct types gets rid of the warnings
      and as well as a couple of redundant casts.
      
      Fixes: db57656b ("crypto: caam - group algorithm related params")
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      9c0bc511
  8. 30 11月, 2016 10 次提交
  9. 28 11月, 2016 9 次提交
  10. 19 11月, 2016 1 次提交
  11. 17 11月, 2016 1 次提交