sealed trait Cipher extends Transform

Instances of the Cipher class are used to encrypt data. The class can be used in one of two ways:

  • As a stream that is both readable and writable, where plain unencrypted data is written to produce encrypted data on the readable side, or
  • Using the cipher.update() and cipher.final() methods to produce the encrypted data.

The crypto.createCipher() or crypto.createCipheriv() methods are used to create Cipher instances. Cipher objects are not to be created directly using the new keyword.

Annotations
@JSType() @native()
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Cipher
  2. Transform
  3. ITransform
  4. IDuplex
  5. IWritable
  6. IReadable
  7. LegacyStream
  8. IEventEmitter
  9. Stream
  10. Object
  11. Any
  12. AnyRef
  13. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def addListener(eventName: String, listener: Function): Cipher.this.type

    Alias for emitter.on(eventName, listener).

    Alias for emitter.on(eventName, listener).

    Definition Classes
    IEventEmitter
    Example:
    1. emitter.addListener(eventName, listener)

    See also

    on()

  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  7. def cork(): Unit

    Forces buffering of all writes.

    Forces buffering of all writes. Buffered data will be flushed either at stream.uncork() or at stream.end() call.

    Definition Classes
    IWritable
    Example:
    1. writable.cork()

  8. def destroy(): Unit
    Definition Classes
    IWritable
  9. def destroy(error: Error): Unit
    Definition Classes
    IWritable
  10. def destroyed: Boolean
    Definition Classes
    IDuplexIWritableIReadable
  11. val domain: Domain
    Definition Classes
    IEventEmitter
  12. def emit(name: String, args: Any*): Boolean

    Synchronously calls each of the listeners registered for the event named eventName, in the order they were registered, passing the supplied arguments to each.

    Synchronously calls each of the listeners registered for the event named eventName, in the order they were registered, passing the supplied arguments to each.

    Returns true if the event had listeners, false otherwise.

    name

    the event name

    args

    the event arguments

    Definition Classes
    IEventEmitter
    Example:
    1. emitter.emit(name[, arg1][, arg2][, ...])

  13. def end(): Cipher.this.type
    Definition Classes
    IWritable
  14. def end(callback: Function1[Error, Any]): Cipher.this.type
    Definition Classes
    IWritable
  15. def end(chunk: String, encoding: String): Cipher.this.type
    Definition Classes
    IWritable
  16. def end(chunk: String, encoding: String, callback: Function1[Error, Any]): Cipher.this.type
    Definition Classes
    IWritable
  17. def end(chunk: Uint8Array): Cipher.this.type
    Definition Classes
    IWritable
  18. def end(chunk: String): Cipher.this.type
    Definition Classes
    IWritable
  19. def end(chunk: Uint8Array, callback: Function1[Error, Any]): Cipher.this.type
    Definition Classes
    IWritable
  20. def end(chunk: String, callback: Function1[Error, Any]): Cipher.this.type
    Definition Classes
    IWritable
  21. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  22. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  23. def eventNames(): Array[String]
    Definition Classes
    IEventEmitter
  24. def final(): Buffer

    Returns any remaining enciphered contents.

    Returns any remaining enciphered contents. If output_encoding parameter is one of 'binary', 'base64' or 'hex', a string is returned. If an output_encoding is not provided, a Buffer is returned.

    Once the cipher.final() method has been called, the Cipher object can no longer be used to encrypt data. Attempts to call cipher.final() more than once will result in an error being thrown.

    Example:
    1. cipher.final([output_encoding])

  25. def final(outputEncoding: String): String

    Returns any remaining enciphered contents.

    Returns any remaining enciphered contents. If output_encoding parameter is one of 'binary', 'base64' or 'hex', a string is returned. If an output_encoding is not provided, a Buffer is returned.

    Once the cipher.final() method has been called, the Cipher object can no longer be used to encrypt data. Attempts to call cipher.final() more than once will result in an error being thrown.

    Example:
    1. cipher.final([output_encoding])

  26. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  27. def getAuthTag(): Buffer

    When using an authenticated encryption mode (only GCM is currently supported), the cipher.getAuthTag() method returns a Buffer containing the authentication tag that has been computed from the given data.

    When using an authenticated encryption mode (only GCM is currently supported), the cipher.getAuthTag() method returns a Buffer containing the authentication tag that has been computed from the given data.

    The cipher.getAuthTag() method should only be called after encryption has been completed using the cipher.final() method.

    Example:
    1. cipher.getAuthTag()

  28. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  29. def getMaxListeners(): Int

    Returns the current max listener value for the EventEmitter which is either set by emitter.setMaxListeners(n) or defaults to EventEmitter.defaultMaxListeners.

    Returns the current max listener value for the EventEmitter which is either set by emitter.setMaxListeners(n) or defaults to EventEmitter.defaultMaxListeners.

    Definition Classes
    IEventEmitter
    Example:
    1. emitter.getMaxListeners()

    See also

    setMaxListeners()

  30. def hasOwnProperty(v: String): Boolean
    Definition Classes
    Object
  31. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  32. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  33. def isPaused(): Boolean

    This method returns whether or not the readable has been explicitly paused by client code (using stream.pause() without a corresponding stream.resume()).

    This method returns whether or not the readable has been explicitly paused by client code (using stream.pause() without a corresponding stream.resume()).

    Definition Classes
    IReadable
    Example:
    1. readable.isPaused()

  34. def isPrototypeOf(v: Object): Boolean
    Definition Classes
    Object
  35. def listenerCount(eventName: String): Int

    Returns the number of listeners listening to the event named eventName.

    Returns the number of listeners listening to the event named eventName.

    Definition Classes
    IEventEmitter
    Example:
    1. emitter.listenerCount(eventName)

  36. def listeners(eventName: String): Array[Function]

    Returns a copy of the array of listeners for the event named eventName.

    Returns a copy of the array of listeners for the event named eventName.

    Definition Classes
    IEventEmitter
    Example:
    1. emitter.listeners(eventName)

  37. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  38. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  39. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  40. def off(eventName: String, listner: Function): Cipher.this.type
    Definition Classes
    IEventEmitter
  41. def on(eventName: String, listener: Function): Cipher.this.type

    Adds the listener function to the end of the listeners array for the event named eventName.

    Adds the listener function to the end of the listeners array for the event named eventName. No checks are made to see if the listener has already been added. Multiple calls passing the same combination of eventName and listener will result in the listener being added, and called, multiple times.

    Returns a reference to the EventEmitter so calls can be chained.

    Definition Classes
    IEventEmitter
    Example:
    1. emitter.on(eventName, listener)

  42. def once(eventName: String, listener: Function): Cipher.this.type

    Adds a one time listener function for the event named eventName.

    Adds a one time listener function for the event named eventName. This listener is invoked only the next time eventName is triggered, after which it is removed.

    Definition Classes
    IEventEmitter
    Example:
    1. emitter.once(eventName, listener)

  43. def pause(): Cipher.this.type

    This method will cause a stream in flowing mode to stop emitting 'data' events, switching out of flowing mode.

    This method will cause a stream in flowing mode to stop emitting 'data' events, switching out of flowing mode. Any data that becomes available will remain in the internal buffer.

    Definition Classes
    IReadable
    Example:
    1. readable.pause()

  44. def pipe(destination: IWritable): Cipher.this.type
    Definition Classes
    IReadable
  45. def pipe(destination: IWritable, options: ReadablePipeOptions): Cipher.this.type

    This method pulls all the data out of a readable stream, and writes it to the supplied destination, automatically managing the flow so that the destination is not overwhelmed by a fast readable stream.

    This method pulls all the data out of a readable stream, and writes it to the supplied destination, automatically managing the flow so that the destination is not overwhelmed by a fast readable stream. Multiple destinations can be piped to safely.

    Definition Classes
    IReadable
    Example:
    1. readable.pipe(destination[, options])

  46. def prependListener(eventName: String, listener: Function): Cipher.this.type
    Definition Classes
    IEventEmitter
  47. def prependOnceListener(eventName: String, listener: Function): Cipher.this.type
    Definition Classes
    IEventEmitter
  48. def propertyIsEnumerable(v: String): Boolean
    Definition Classes
    Object
  49. def push(chunk: Uint8Array): Boolean

    When chunk is a Buffer or string, the chunk of data will be added to the internal queue for users of the stream to consume.

    When chunk is a Buffer or string, the chunk of data will be added to the internal queue for users of the stream to consume. Passing chunk as null signals the end of the stream (EOF), after which no more data can be written.

    When the Readable is operating in paused mode, the data added with readable.push() can be read out by calling the readable.read() method when the 'readable' event is emitted.

    When the Readable is operating in flowing mode, the data added with readable.push() will be delivered by emitting a 'data' event.

    chunk

    the chunk of data to push into the read queue

    returns

    true if additional chunks of data may continued to be pushed; false otherwise.

    Definition Classes
    IReadable
  50. def push(chunk: String): Boolean
    Definition Classes
    IReadable
  51. def push(chunk: String, encoding: String): Boolean

    When chunk is a Buffer or string, the chunk of data will be added to the internal queue for users of the stream to consume.

    When chunk is a Buffer or string, the chunk of data will be added to the internal queue for users of the stream to consume. Passing chunk as null signals the end of the stream (EOF), after which no more data can be written.

    When the Readable is operating in paused mode, the data added with readable.push() can be read out by calling the readable.read() method when the 'readable' event is emitted.

    When the Readable is operating in flowing mode, the data added with readable.push() will be delivered by emitting a 'data' event.

    chunk

    the chunk of data to push into the read queue

    encoding

    the encoding of String chunks. Must be a valid Buffer encoding, such as 'utf8' or 'ascii'

    returns

    true if additional chunks of data may continued to be pushed; false otherwise.

    Definition Classes
    IReadable
  52. def rawListeners(eventName: String): Array[Function]
    Definition Classes
    IEventEmitter
  53. def readAsBuffer(): Buffer
    Definition Classes
    IReadable
    Annotations
    @JSName("read")
  54. def readAsBuffer(size: Int): Buffer
    Definition Classes
    IReadable
    Annotations
    @JSName("read")
  55. def readAsObject(): Any
    Definition Classes
    IReadable
    Annotations
    @JSName("read")
  56. def readAsObject(size: Int): Any
    Definition Classes
    IReadable
    Annotations
    @JSName("read")
  57. def readAsString(): String
    Definition Classes
    IReadable
    Annotations
    @JSName("read")
  58. def readAsString(size: Int): String
    Definition Classes
    IReadable
    Annotations
    @JSName("read")
  59. def readable: Boolean
    Definition Classes
    IReadable
  60. def readableEncoding: String
    Definition Classes
    IReadable
  61. def readableEnded: Boolean
    Definition Classes
    IReadable
  62. def readableFlowing: |[Boolean, Null]
    Definition Classes
    IReadable
  63. def readableHighWaterMark: Double
    Definition Classes
    IReadable
  64. def readableLength: Int
    Definition Classes
    IReadable
  65. def readableObjectMode: Boolean
    Definition Classes
    IReadable
  66. def removeAllListeners(): Cipher.this.type
    Definition Classes
    IEventEmitter
  67. def removeAllListeners(eventName: String): Cipher.this.type

    Removes all listeners, or those of the specified eventName.

    Removes all listeners, or those of the specified eventName.

    Note that it is bad practice to remove listeners added elsewhere in the code, particularly when the EventEmitter instance was created by some other component or module (e.g. sockets or file streams).

    Returns a reference to the EventEmitter so calls can be chained.

    Definition Classes
    IEventEmitter
    Example:
    1. emitter.removeAllListeners([eventName])

  68. def removeListener(eventName: String, listener: Function): Cipher.this.type

    Removes the specified listener from the listener array for the event named eventName.

    Removes the specified listener from the listener array for the event named eventName. removeListener will remove, at most, one instance of a listener from the listener array. If any single listener has been added multiple times to the listener array for the specified eventName, then removeListener must be called multiple times to remove each instance.

    Note that once an event has been emitted, all listeners attached to it at the time of emitting will be called in order. This implies that any removeListener() or removeAllListeners() calls after emitting and before the last listener finishes execution will not remove them from emit() in progress. Subsequent events will behave as expected.

    Definition Classes
    IEventEmitter
    Example:
    1. emitter.removeListener(eventName, listener)

  69. def resume(): Cipher.this.type

    This method will cause the readable stream to resume emitting 'data' events.

    This method will cause the readable stream to resume emitting 'data' events. This method will switch the stream into flowing mode. If you do not want to consume the data from a stream, but you do want to get to its 'end' event, you can call stream.resume() to open the flow of data.

    Definition Classes
    IReadable
    Example:
    1. readable.resume()

  70. def setAAD(buffer: Buffer): Cipher
  71. def setAAD(buffer: Buffer, options: SetAADOptions): Cipher

    When using an authenticated encryption mode (only GCM is currently supported), the cipher.setAAD() method sets the value used for the additional authenticated data (AAD) input parameter.

    When using an authenticated encryption mode (only GCM is currently supported), the cipher.setAAD() method sets the value used for the additional authenticated data (AAD) input parameter.

    Example:
    1. cipher.setAAD(buffer)

  72. def setAutoPadding(): Cipher
  73. def setAutoPadding(auto_padding: Boolean): Cipher

    When using block encryption algorithms, the Cipher class will automatically add padding to the input data to the appropriate block size.

    When using block encryption algorithms, the Cipher class will automatically add padding to the input data to the appropriate block size. To disable the default padding call cipher.setAutoPadding(false).

    When auto_padding is false, the length of the entire input data must be a multiple of the cipher's block size or cipher.final() will throw an Error. Disabling automatic padding is useful for non-standard padding, for instance using 0x0 instead of PKCS padding.

    The cipher.setAutoPadding() method must be called before cipher.final().

    Example:
    1. cipher.setAutoPadding(auto_padding=true)

  74. def setDefaultEncoding(encoding: String): Cipher.this.type

    Sets the default encoding for a writable stream.

    Sets the default encoding for a writable stream.

    Definition Classes
    IWritable
    Example:
    1. writable.setDefaultEncoding(encoding)

  75. def setEncoding(encoding: String): Cipher.this.type

    Call this function to cause the stream to return strings of the specified encoding instead of Buffer objects.

    Call this function to cause the stream to return strings of the specified encoding instead of Buffer objects. For example, if you do readable.setEncoding('utf8'), then the output data will be interpreted as UTF-8 data, and returned as strings. If you do readable.setEncoding('hex'), then the data will be encoded in hexadecimal string format.

    This properly handles multi-byte characters that would otherwise be potentially mangled if you simply pulled the Buffers directly and called buf.toString(encoding) on them. If you want to read the data as strings, always use this method.

    Also you can disable any encoding at all with readable.setEncoding(null). This approach is very useful if you deal with binary data or with large multi-byte strings spread out over multiple chunks.

    Definition Classes
    IReadable
    Example:
    1. readable.setEncoding(encoding)

  76. def setMaxListeners(n: Int): Cipher.this.type

    By default EventEmitters will print a warning if more than 10 listeners are added for a particular event.

    By default EventEmitters will print a warning if more than 10 listeners are added for a particular event. This is a useful default that helps finding memory leaks. Obviously, not all events should be limited to just 10 listeners. The emitter.setMaxListeners() method allows the limit to be modified for this specific EventEmitter instance. The value can be set to Infinity (or 0) for to indicate an unlimited number of listeners.

    Returns a reference to the EventEmitter so calls can be chained.

    Definition Classes
    IEventEmitter
    Example:
    1. emitter.setMaxListeners(n)

  77. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  78. def toLocaleString(): String
    Definition Classes
    Object
  79. def toString(): String
    Definition Classes
    AnyRef → Any
  80. def uncork(): Unit

    Flush all data, buffered since stream.cork() call.

    Flush all data, buffered since stream.cork() call.

    Definition Classes
    IWritable
    Example:
    1. writable.uncork()

  81. def unpipe(): Unit
    Definition Classes
    IReadable
  82. def unpipe(destination: IWritable): Unit

    This method will remove the hooks set up for a previous stream.pipe() call.

    This method will remove the hooks set up for a previous stream.pipe() call.

    If the destination is not specified, then all pipes are removed.

    If the destination is specified, but no pipe is set up for it, then this is a no-op.

    Definition Classes
    IReadable
    Example:
    1. readable.unpipe([destination])

  83. def unshift(chunk: Uint8Array): Unit
    Definition Classes
    IReadable
  84. def unshift(chunk: String): Unit

    This is useful in certain cases where a stream is being consumed by a parser, which needs to "un-consume" some data that it has optimistically pulled out of the source, so that the stream can be passed on to some other party.

    This is useful in certain cases where a stream is being consumed by a parser, which needs to "un-consume" some data that it has optimistically pulled out of the source, so that the stream can be passed on to some other party.

    Note that stream.unshift(chunk) cannot be called after the 'end' event has been triggered; a runtime error will be raised.

    If you find that you must often call stream.unshift(chunk) in your programs, consider implementing a Transform stream instead.

    Definition Classes
    IReadable
    Example:
    1. readable.unshift(chunk)

  85. def update(data: BufferLike): Buffer
  86. def update(data: String, inputEncoding: String): Buffer
  87. def update(data: String, inputEncoding: String, outputEncoding: String): String

    Updates the cipher with data.

    Updates the cipher with data. If the input_encoding argument is given, it's value must be one of 'utf8', 'ascii', or 'binary' and the data argument is a string using the specified encoding. If the input_encoding argument is not given, data must be a Buffer. If data is a Buffer then input_encoding is ignored.

    The output_encoding specifies the output format of the enciphered data, and can be 'binary', 'base64' or 'hex'. If the output_encoding is specified, a string using the specified encoding is returned. If no output_encoding is provided, a Buffer is returned.

    The cipher.update() method can be called multiple times with new data until cipher.final() is called. Calling cipher.update() after cipher.final() will result in an error being thrown.

    Example:
    1. cipher.update(data[, input_encoding][, output_encoding])

  88. def valueOf(): Any
    Definition Classes
    Object
  89. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  90. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  91. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  92. def wrap(stream: LegacyStream): Unit

    Versions of Node.js prior to v0.10 had streams that did not implement the entire Streams API as it is today.

    Versions of Node.js prior to v0.10 had streams that did not implement the entire Streams API as it is today. (See Compatibility for more information.)

    If you are using an older Node.js library that emits 'data' events and has a stream.pause() method that is advisory only, then you can use the wrap() method to create a Readable stream that uses the old stream as its data source.

    You will very rarely ever need to call this function, but it exists as a convenience for interacting with old Node.js programs and libraries.

    Definition Classes
    IReadable
    Example:
    1. readable.wrap(stream)

  93. def writable: Boolean
    Definition Classes
    IWritable
  94. def writableCorked: Int
    Definition Classes
    IWritable
  95. def writableEnded: Boolean
    Definition Classes
    IWritable
  96. def writableFinished: Boolean
    Definition Classes
    IWritable
  97. def writableHighWaterMark: Double
    Definition Classes
    IWritable
  98. def writableLength: Int
    Definition Classes
    IWritable
  99. def writableObjectMode: Boolean
    Definition Classes
    IWritable
  100. def write(chunk: String, encoding: String, callback: Function1[Error, Any]): Boolean
    Definition Classes
    IWritable
  101. def write(chunk: String, encoding: String): Boolean
    Definition Classes
    IWritable
  102. def write(chunk: String): Boolean
    Definition Classes
    IWritable
  103. def write(chunk: String, callback: Function1[Error, Any]): Boolean
    Definition Classes
    IWritable
  104. def write(chunk: Uint8Array): Boolean
    Definition Classes
    IWritable
  105. def write(chunk: Uint8Array, callback: Function1[Error, Any]): Boolean
    Definition Classes
    IWritable

Inherited from Transform

Inherited from ITransform

Inherited from IDuplex

Inherited from IWritable

Inherited from IReadable

Inherited from LegacyStream

Inherited from IEventEmitter

Inherited from Stream

Inherited from Object

Inherited from Any

Inherited from AnyRef

Inherited from Any

Ungrouped