Use argument defaults for getDefaultWireFormat() instead of a separate overloaded method.
diff --git a/ndn-cpp/security/key-chain.hpp b/ndn-cpp/security/key-chain.hpp
index 584ddc4..0afa4b5 100644
--- a/ndn-cpp/security/key-chain.hpp
+++ b/ndn-cpp/security/key-chain.hpp
@@ -31,17 +31,11 @@
   /**
    * Call sign with the default public and private keys.
    * @param data
-   * @param wireFormat The WireFormat for calling encodeData.
+   * @param wireFormat The WireFormat for calling encodeData, or WireFormat::getDefaultWireFormat() if omitted.
    */
-  static void defaultSign(Data& data, WireFormat& wireFormat);
+  static void defaultSign(Data& data, WireFormat& wireFormat = *WireFormat::getDefaultWireFormat());
 
   /**
-   * Call sign with the default public and private keys.  For wireFormat, use WireFormat::getDefaultWireFormat().
-   * @param data
-   */
-  static void defaultSign(Data& data);
-  
-  /**
    * Use the WireFormat to decode the input as a Data packet and use the public key in the key locator to 
    * verify the signature.
    * This does just uses the public key without checking whether it is certified.