More RFC-compliant implementations, especially utility functions