code: protected BitArray getKey() {
          /*
           * Do this for consistency in case a subclass
           * modifies byte[] key directly. Remove when
           * byte[] key is deleted.
           * Note: the consistency checks fail when the subclass
           * modifies a non byte-aligned key (into a byte-aligned key)
           * using the deprecated byte[] key field.
           */
          this.bitStringKey = new BitArray(
                            this.key.length * 8 - this.unusedBits,
                            this.key);
  
          return (BitArray)bitStringKey.clone();
      }
docs: Gets the key. The key may or may not be byte aligned.
  @return a BitArray containing the key.