org.bouncycastle.jce

## Class X509KeyUsage

- java.lang.Object
- - org.bouncycastle.asn1.ASN1Encodable
  - - org.bouncycastle.jce.X509KeyUsage

All Implemented Interfaces:
  DEREncodable

    public class X509KeyUsage
    extends ASN1Encodable

A holding class for constructing an X509 Key Usage extension.

        id-ce-keyUsage OBJECT IDENTIFIER ::=  { id-ce 15 }

        KeyUsage ::= BIT STRING {
             digitalSignature        (0),
             nonRepudiation          (1),
             keyEncipherment         (2),
             dataEncipherment        (3),
             keyAgreement            (4),
             keyCertSign             (5),
             cRLSign                 (6),
             encipherOnly            (7),
             decipherOnly            (8) }

### Field Summary

Fields
`static int` `cRLSign`
`static int` `dataEncipherment`
`static int` `decipherOnly`
`static int` `digitalSignature`
`static int` `encipherOnly`
`static int` `keyAgreement`
`static int` `keyCertSign`
`static int` `keyEncipherment`
`static int` `nonRepudiation`

### Fields inherited from class org.bouncycastle.asn1.ASN1Encodable

`BER, DER`

### Constructor Summary

Constructors
Constructor and Description
`X509KeyUsage(int usage)` Basic constructor.

### Method Summary

Methods
`DERObject` `toASN1Object()`

### Methods inherited from class org.bouncycastle.asn1.ASN1Encodable

`equals, getDEREncoded, getDERObject, getEncoded, getEncoded, hashCode`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### digitalSignature

    public static final int digitalSignature

See Also:
  Constant Field Values

#### nonRepudiation

    public static final int nonRepudiation

See Also:
  Constant Field Values

#### keyEncipherment

    public static final int keyEncipherment

See Also:
  Constant Field Values

#### dataEncipherment

    public static final int dataEncipherment

See Also:
  Constant Field Values

#### keyAgreement

    public static final int keyAgreement

See Also:
  Constant Field Values

#### keyCertSign

    public static final int keyCertSign

See Also:
  Constant Field Values

#### cRLSign

    public static final int cRLSign

See Also:
  Constant Field Values

#### encipherOnly

    public static final int encipherOnly

See Also:
  Constant Field Values

#### decipherOnly

    public static final int decipherOnly

See Also:
  Constant Field Values

### Constructor Detail

#### X509KeyUsage

    public X509KeyUsage(int usage)

Basic constructor.

Parameters:
  `usage` - - the bitwise OR of the Key Usage flags giving the allowed uses for the key. e.g. (X509KeyUsage.keyEncipherment | X509KeyUsage.dataEncipherment)

### Method Detail

#### toASN1Object

    public DERObject toASN1Object()

Specified by:
  `toASN1Object` in class `ASN1Encodable`