code: func (fw *Framework) NewTransportForSecureRequest(request protocol.SecureRequest) (message protocol.TransportMessage, err error) {
  	switch request.Version() {
  	case protocol.SecureRequestV1:
  		message, err = v1.NewTransportMessage(fw.Config.Identity)
  		if err != nil {
  			logrus.Errorf("Failed to create transport from secure request: %s", err)
  			return
  		}
  
  		err = message.SetRequestData(request)
  		if err != nil {
  			logrus.Errorf("Failed to create transport from secure request: %s", err)
  			return
  		}
  
  	default:
  		err = fmt.Errorf("Do not know how to create a Transport message for SecureRequest version %s", request.Version())
  	}
  
  	return
  }
docs: // NewTransportForSecureRequest creates a new TransportMessage with a SecureRequest as payload.  The Transport will be the same version as the SecureRequest