Maintenance Ruby 3.3 gets fixes, but no new features. Switch to Ruby 4.0 →
instance method
Base64#strict_decode64
strict_decode64(str)
lib/base64.rb
View on GitHub ↗
# File tmp/rubies/ruby-3.3.0/lib/base64.rb, line 297
def strict_decode64(str)
str.unpack1("m0")
end
Returns a string containing the decoding of an RFC-2045-compliant Base64-encoded string str:
Example
s = "VGhpcyBpcyBsaW5lIDEKVGhpcyBpcyBsaW5lIDIK" Base64.strict_decode64(s) # => "This is line 1\nThis is line 2\n"
Non-Base64 characters in str not allowed; see Encoding Character Set above: these include newline characters and characters - and /:
Example
Base64.strict_decode64("\n") # Raises ArgumentError Base64.strict_decode64('-') # Raises ArgumentError Base64.strict_decode64('_') # Raises ArgumentError
Padding in str, if present, must be correct:
Example
Base64.strict_decode64("MDEyMzQ1Njc") # Raises ArgumentError Base64.strict_decode64("MDEyMzQ1Njc=") # => "01234567" Base64.strict_decode64("MDEyMzQ1Njc==") # Raises ArgumentError