         kdfimpl (KDFDoublePipelineIterationBytesGenerator. mac)]
     (.init kdfimpl params)
     (reify
-      KDFType
-      (generate-bytes! [_ length]
-        (generate-byte-array kdfimpl length)))))
+      IKDF
+      (generate-byte-array! [_ length]
+        (generate-byte-array kdfimpl length))
+
+      (generate-byte-buffer! [_ length]
+        (generate-byte-buffer kdfimpl length)))))

        kdfimpl (KDFCounterBytesGenerator. mac)]
    (.init kdfimpl params)
    (reify
      KDFType
      (generate-bytes! [_ length]
        (generate-byte-array kdfimpl length)))))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Feedback mode KDF

        kdfimpl (KDFFeedbackBytesGenerator. mac)]
    (.init kdfimpl params)
    (reify
      IKDF
      (generate-byte-array! [_ length]
        (generate-byte-array kdfimpl length))

      (generate-byte-buffer! [_ length]
        (generate-byte-buffer kdfimpl length)))))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Feedback mode KDF
