php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #39908 base64 decoding's memory garbage
Submitted: 2006-12-20 17:18 UTC Modified: 2006-12-20 20:11 UTC
From: herbert dot fischer at gmail dot com Assigned:
Status: Closed Package: Strings related
PHP Version: 5.2.0 OS: Linux RedHat AS3/AS4
Private report: No CVE-ID: None
 [2006-12-20 17:18 UTC] herbert dot fischer at gmail dot com
Description:
------------
I'm having issues trying to base64_decode the encoded string . I tested in a lot of php and linux versions and on some got the error and on another didn't. Mostly the problem seams to be on PHP 5.X

QkVHSU46VkNBTEVOREFSDQpQUk9ESUQ6LS8vR29vZ2xlIEluYy8vR29vZ2xlIENhbGVuZGFyIDcw
LjkwNTQvL0VODQpWRVJTSU9OOjIuMA0KQ0FMU0NBTEU6R1JFR09SSUFODQpNRVRIT0Q6UkVRVUVT
VA0KQkVHSU46VkVWRU5UDQpEVFNUQVJUOjIwMDYxMjE5VDIyMDAwMFoNCkRURU5EOjIwMDYxMjIw
VDAzMDAwMFoNCkRUU1RBTVA6MjAwNjEyMTlUMTc1NjA4Wg0KT1JHQU5JWkVSO0NOPUhlcmJlcnQg
RmlzY2hlcjpNQUlMVE86aGVyYmVydC5maXNjaGVyQGdtYWlsLmNvbQ0KVUlEOmI5dWdhNjdwMjNn
Z21ibG1uYW05bXM0bTlvQGdvb2dsZS5jb20NCkFUVEVOREVFO0NVVFlQRT1JTkRJVklEVUFMO1JP
TEU9UkVRLVBBUlRJQ0lQQU5UO1BBUlRTVEFUPUFDQ0VQVEVEO1JTVlA9VFJVRQ0KIDtDTj1IZXJi
ZXJ0IEZpc2NoZXI7WC1OVU0tR1VFU1RTPTA6TUFJTFRPOmhlcmJlcnQuZmlzY2hlckBnbWFpbC5j
b20NCkFUVEVOREVFO0NVVFlQRT1JTkRJVklEVUFMO1JPTEU9UkVRLVBBUlRJQ0lQQU5UO1BBUlRT
VEFUPU5FRURTLUFDVElPTjtSU1ZQPQ0KIFRSVUU7Q049bWFpbEBoZ2Zpc2NoZXIubG9jYXdlYi5j
b20uYnI7WC1OVU0tR1VFU1RTPTA6TUFJTFRPOm1haWxAaGdmaXNjaGVyLg0KIGxvY2F3ZWIuY29t
LmJyDQpBVFRFTkRFRTtDVVRZUEU9SU5ESVZJRFVBTDtST0xFPVJFUS1QQVJUSUNJUEFOVDtQQVJU
U1RBVD1URU5UQVRJVkU7UlNWUD1UUlUNCiBFO0NOPWhlcmJlcnQuZmlzY2hlckBsb2Nhd2ViLmNv
bS5icjtYLU5VTS1HVUVTVFM9MDpNQUlMVE86aGVyYmVydC5maXNjaGVyQGwNCiBvY2F3ZWIuY29t
LmJyDQpDTEFTUzpQUklWQVRFDQpDUkVBVEVEOjIwMDYxMjE5VDE1MDczOVoNCkRFU0NSSVBUSU9O
OkNoZWdvdSBvIGdyYW5kZSBkaWEgZGEgbm9zc2EgQ29uZnJhdGVybml6YT8/b1wsIHF1ZSB0ZXI/
IGluP2Npbw0KICA/cyAxOWhzIG5vIDAxMSBldmVudG9zIChSdWEgQWx2b3JhZGFcLCAxMDM1IC0g
SXRhaW0gQmliaSAtIDxhIHJlbD1ub2ZvbGxvdw0KICBocmVmPSJodHRwOi8vd3d3LjAxMWV2ZW50
b3MuY29tLmJyIiBjbGFzcz1saW5raWZpZWQgdGFyZ2V0PV9ibGFuaz53d3cuMDExZQ0KIHZlbnRv
cy5jb20uYnI8L2E KS4gTGVtYnJvXCwgcXVlID8gYXBlbmFzIHBhcmEgb3MgZnVuY2lvbj9yaW9z
LlxuQWw/bSBkZSB1bQ0KIGEgYmFsYWRhIGNvbXBsZXRhIGNvbSBkaXJlaXRvIGEgc2Vydmk/byBk
ZSBidWZmZXRcLCBvcGVuIGJhclwsIERKXCwgcGlzdGEgZA0KIGUgZGFuP2FcLCBzb20gZGEgbWFp
cyBhbHRhIHF1YWxpZGFkZVwsIHRlcmVtb3MgbyBzb3J0ZWlvIGRlIDQ0IGJyaW5kZXNcLCBlbg0K
IHRyZSAgdGVsZXZpc29yZXNcLCBiaWNpY2xldGFzXCwgYXBhcmVsaG9zIGRlIERWRFwsIGhvbWUg
dGhlYXRlciBlIE1QMyFcbk9zIA0KIGZ1bmNpb24/cmlvcyBkbyBwZXI/b2RvIG5vdHVybm8gcXVl
IGVzdGl2ZXJlbSB0cmFiYWxoYW5kbyBubyBtb21lbnRvIGRvIHNvcg0KIHRlaW9cLCBhbD9tIGRv
cyBwcj9taW9zIGNpdGFkb3MgYWNpbWFcLCBpcj9vIGNvbmNvcnJlciBoPyB1bSBwcj9taW8gZXNw
ZWNpYQ0KIGwuXG5cbkNvbXBhcmU/YW0gYSBjb25mcmF0ZXJuaXphPz9vXCwgcXVlIHM/IHNlcj8g
IHVtIHN1Y2Vzc28gY29tIHN1YSBwcmVzZQ0KIG4/YSEhIVxuVmlzdWFsaXplIHNldSBldmVudG8g
ZW0gaHR0cDovL3d3dy5nb29nbGUuY29tL2NhbGVuZGFyL2V2ZW50P2FjdGlvbg0KID1WSUVXJmVp
ZD1ZamwxWjJFMk4zQXlNMmRuYldKc2JXNWhiVGx0Y3pSdE9XOGdiV0ZwYkVCb1oyWnBjMk5vWlhJ
dWJHOWpZWGRsWQ0KIGk1amIyMHVZbkkmdG9rPU1qVWphR1Z5WW1WeWRDNW1hWE5qYUdWeVFHZHRZ
V2xzTG1OdmJXWm1aVGd4TWpFd09ETmtZek16TlRsaw0KIE5HTm1ORFEwTVRZellqVTNNV0kyWVRj
ek1tWm1PVGsmY3R6PUFtZXJpY2ElMkZBcmdlbnRpbmElMkZCdWVub3NfQWlyZXMmaGw9cA0KIHRf
QlIuDQpMQVNULU1PRElGSUVEOjIwMDYxMjE5VDE3NTYwOFoNCkxPQ0FUSU9OOjAxMSBFdmVudG9z
DQpTRVFVRU5DRTowDQpTVEFUVVM6Q09ORklSTUVEDQpTVU1NQVJZOkZlc3RhIGRhIExvY2FXZWIN
ClRSQU5TUDpPUEFRVUUNCkVORDpWRVZFTlQNCkVORDpWQ0FMRU5EQVINCg==

Reproduce code:
---------------
<?php
$var = "QkVHSU46VkNBTEVOREFSDQpQUk9ESUQ6LS8vR29vZ2xlIEluYy8vR29vZ2xlIENhbGVuZGFyIDcw
LjkwNTQvL0VODQpWRVJTSU9OOjIuMA0KQ0FMU0NBTEU6R1JFR09SSUFODQpNRVRIT0Q6UkVRVUVT
VA0KQkVHSU46VkVWRU5UDQpEVFNUQVJUOjIwMDYxMjE5VDIyMDAwMFoNCkRURU5EOjIwMDYxMjIw
VDAzMDAwMFoNCkRUU1RBTVA6MjAwNjEyMTlUMTc1NjA4Wg0KT1JHQU5JWkVSO0NOPUhlcmJlcnQg
RmlzY2hlcjpNQUlMVE86aGVyYmVydC5maXNjaGVyQGdtYWlsLmNvbQ0KVUlEOmI5dWdhNjdwMjNn
Z21ibG1uYW05bXM0bTlvQGdvb2dsZS5jb20NCkFUVEVOREVFO0NVVFlQRT1JTkRJVklEVUFMO1JP
TEU9UkVRLVBBUlRJQ0lQQU5UO1BBUlRTVEFUPUFDQ0VQVEVEO1JTVlA9VFJVRQ0KIDtDTj1IZXJi
ZXJ0IEZpc2NoZXI7WC1OVU0tR1VFU1RTPTA6TUFJTFRPOmhlcmJlcnQuZmlzY2hlckBnbWFpbC5j
b20NCkFUVEVOREVFO0NVVFlQRT1JTkRJVklEVUFMO1JPTEU9UkVRLVBBUlRJQ0lQQU5UO1BBUlRT
VEFUPU5FRURTLUFDVElPTjtSU1ZQPQ0KIFRSVUU7Q049bWFpbEBoZ2Zpc2NoZXIubG9jYXdlYi5j
b20uYnI7WC1OVU0tR1VFU1RTPTA6TUFJTFRPOm1haWxAaGdmaXNjaGVyLg0KIGxvY2F3ZWIuY29t
LmJyDQpBVFRFTkRFRTtDVVRZUEU9SU5ESVZJRFVBTDtST0xFPVJFUS1QQVJUSUNJUEFOVDtQQVJU
U1RBVD1URU5UQVRJVkU7UlNWUD1UUlUNCiBFO0NOPWhlcmJlcnQuZmlzY2hlckBsb2Nhd2ViLmNv
bS5icjtYLU5VTS1HVUVTVFM9MDpNQUlMVE86aGVyYmVydC5maXNjaGVyQGwNCiBvY2F3ZWIuY29t
LmJyDQpDTEFTUzpQUklWQVRFDQpDUkVBVEVEOjIwMDYxMjE5VDE1MDczOVoNCkRFU0NSSVBUSU9O
OkNoZWdvdSBvIGdyYW5kZSBkaWEgZGEgbm9zc2EgQ29uZnJhdGVybml6YT8/b1wsIHF1ZSB0ZXI/
IGluP2Npbw0KICA/cyAxOWhzIG5vIDAxMSBldmVudG9zIChSdWEgQWx2b3JhZGFcLCAxMDM1IC0g
SXRhaW0gQmliaSAtIDxhIHJlbD1ub2ZvbGxvdw0KICBocmVmPSJodHRwOi8vd3d3LjAxMWV2ZW50
b3MuY29tLmJyIiBjbGFzcz1saW5raWZpZWQgdGFyZ2V0PV9ibGFuaz53d3cuMDExZQ0KIHZlbnRv
cy5jb20uYnI8L2E KS4gTGVtYnJvXCwgcXVlID8gYXBlbmFzIHBhcmEgb3MgZnVuY2lvbj9yaW9z
LlxuQWw/bSBkZSB1bQ0KIGEgYmFsYWRhIGNvbXBsZXRhIGNvbSBkaXJlaXRvIGEgc2Vydmk/byBk
ZSBidWZmZXRcLCBvcGVuIGJhclwsIERKXCwgcGlzdGEgZA0KIGUgZGFuP2FcLCBzb20gZGEgbWFp
cyBhbHRhIHF1YWxpZGFkZVwsIHRlcmVtb3MgbyBzb3J0ZWlvIGRlIDQ0IGJyaW5kZXNcLCBlbg0K
IHRyZSAgdGVsZXZpc29yZXNcLCBiaWNpY2xldGFzXCwgYXBhcmVsaG9zIGRlIERWRFwsIGhvbWUg
dGhlYXRlciBlIE1QMyFcbk9zIA0KIGZ1bmNpb24/cmlvcyBkbyBwZXI/b2RvIG5vdHVybm8gcXVl
IGVzdGl2ZXJlbSB0cmFiYWxoYW5kbyBubyBtb21lbnRvIGRvIHNvcg0KIHRlaW9cLCBhbD9tIGRv
cyBwcj9taW9zIGNpdGFkb3MgYWNpbWFcLCBpcj9vIGNvbmNvcnJlciBoPyB1bSBwcj9taW8gZXNw
ZWNpYQ0KIGwuXG5cbkNvbXBhcmU/YW0gYSBjb25mcmF0ZXJuaXphPz9vXCwgcXVlIHM/IHNlcj8g
IHVtIHN1Y2Vzc28gY29tIHN1YSBwcmVzZQ0KIG4/YSEhIVxuVmlzdWFsaXplIHNldSBldmVudG8g
ZW0gaHR0cDovL3d3dy5nb29nbGUuY29tL2NhbGVuZGFyL2V2ZW50P2FjdGlvbg0KID1WSUVXJmVp
ZD1ZamwxWjJFMk4zQXlNMmRuYldKc2JXNWhiVGx0Y3pSdE9XOGdiV0ZwYkVCb1oyWnBjMk5vWlhJ
dWJHOWpZWGRsWQ0KIGk1amIyMHVZbkkmdG9rPU1qVWphR1Z5WW1WeWRDNW1hWE5qYUdWeVFHZHRZ
V2xzTG1OdmJXWm1aVGd4TWpFd09ETmtZek16TlRsaw0KIE5HTm1ORFEwTVRZellqVTNNV0kyWVRj
ek1tWm1PVGsmY3R6PUFtZXJpY2ElMkZBcmdlbnRpbmElMkZCdWVub3NfQWlyZXMmaGw9cA0KIHRf
QlIuDQpMQVNULU1PRElGSUVEOjIwMDYxMjE5VDE3NTYwOFoNCkxPQ0FUSU9OOjAxMSBFdmVudG9z
DQpTRVFVRU5DRTowDQpTVEFUVVM6Q09ORklSTUVEDQpTVU1NQVJZOkZlc3RhIGRhIExvY2FXZWIN
ClRSQU5TUDpPUEFRVUUNCkVORDpWRVZFTlQNCkVORDpWQ0FMRU5EQVINCg==";

$res = base64_decode($var);
echo ($res === false) ? "NOPE\n" : "===\n$res\n===\n";

$res = mb_convert_encoding($var, 'ISO-8859-1', 'BASE64');
echo ($res === false) ? "NOPE\n" : "===\n$res\n===\n";

$res = iconv('BASE64', 'ISO-8859-1', $res);
echo ($res === false) ? "NOPE\n" : "===\n$res\n===\n";
?>


Expected result:
----------------
BEGIN:VCALENDAR
PRODID:-//Google Inc//Google Calendar 70.9054//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:REQUEST
BEGIN:VEVENT
DTSTART:20061219T220000Z
DTEND:20061220T030000Z
DTSTAMP:20061219T175608Z
ORGANIZER;CN=Herbert Fischer:MAILTO:herbert.fischer@gmail.com
UID:b9uga67p23ggmblmnam9ms4m9o@google.com
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;RSVP=TRUE
 ;CN=Herbert Fischer;X-NUM-GUESTS=0:MAILTO:herbert.fischer@gmail.com
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=
 TRUE;CN=mail@hgfischer.locaweb.com.br;X-NUM-GUESTS=0:MAILTO:mail@hgfischer.
 locaweb.com.br
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=TENTATIVE;RSVP=TRU
 E;CN=herbert.fischer@locaweb.com.br;X-NUM-GUESTS=0:MAILTO:herbert.fischer@l
 ocaweb.com.br
CLASS:PRIVATE
CREATED:20061219T150739Z
DESCRIPTION:Chegou o grande dia da nossa Confraterniza??o\, que ter? in?cio
  ?s 19hs no 011 eventos (Rua Alvorada\, 1035 - Itaim Bibi - <a rel=nofollow
  href="http://www.011eventos.com.br" class=linkified target=_blank>www.011e
 ventos.com.br</a
K[X]YHE\[\E\H?E[U[U?[?.\nAl?m de um
 a balada completa com direito a servi?o de buffet\, open bar\, DJ\, pista d
 e dan?a\, som da mais alta qualidade\, teremos o sorteio de 44 brindes\, en
 tre  televisores\, bicicletas\, aparelhos de DVD\, home theater e MP3!\nOs
 funcion?rios do per?odo noturno que estiverem trabalhando no momento do sor
 teio\, al?m dos pr?mios citados acima\, ir?o concorrer h? um pr?mio especia
 l.\n\nCompare?am a confraterniza??o\, que s? ser?  um sucesso com sua prese
 n?a!!!\nVisualize seu evento em http://www.google.com/calendar/event?action
 =VIEW&eid=Yjl1Z2E2N3AyM2dnbWJsbW5hbTltczRtOW8gbWFpbEBoZ2Zpc2NoZXIubG9jYXdlY
 i5jb20uYnI&tok=MjUjaGVyYmVydC5maXNjaGVyQGdtYWlsLmNvbWZmZTgxMjEwODNkYzMzNTlk
 NGNmNDQ0MTYzYjU3MWI2YTczMmZmOTk&ctz=America%2FArgentina%2FBuenos_Aires&hl=p
 t_BR.
LAST-MODIFIED:20061219T175608Z
LOCATION:011 Eventos
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:Festa da LocaWeb
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR

Actual result:
--------------
BEGIN:VCALENDAR
PRODID:-//Google Inc//Google Calendar 70.9054//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:REQUEST
BEGIN:VEVENT
DTSTART:20061219T220000Z
DTEND:20061220T030000Z
DTSTAMP:20061219T175608Z
ORGANIZER;CN=Herbert Fischer:MAILTO:herbert.fischer@gmail.com
UID:b9uga67p23ggmblmnam9ms4m9o@google.com
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;RSVP=TRUE
 ;CN=Herbert Fischer;X-NUM-GUESTS=0:MAILTO:herbert.fischer@gmail.com
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=
 TRUE;CN=mail@hgfischer.locaweb.com.br;X-NUM-GUESTS=0:MAILTO:mail@hgfischer.
 locaweb.com.br
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=TENTATIVE;RSVP=TRU
 E;CN=herbert.fischer@locaweb.com.br;X-NUM-GUESTS=0:MAILTO:herbert.fischer@l
 ocaweb.com.br
CLASS:PRIVATE
CREATED:20061219T150739Z
DESCRIPTION:Chegou o grande dia da nossa Confraterniza??o\, que ter? in?cio
  ?s 19hs no 011 eventos (Rua Alvorada\, 1035 - Itaim Bibi - <a rel=nofollow
  href="http://www.011eventos.com.br" class=linkified target=_blank>www.011e
 ventos.com.br</a
K?[X???]YH?\[?\?\?H???[??[ۏܚ[?˗?[?HH[CB?H?[YH??\]H??H\?Z]?H?\??O??H?Y??]?[??\??\?HB?H[??W??HHXZ\?[H]X[YYW\?[[????ܝZ[?H

??[?\?[?B??H[]?\?ܙ\??X?X?]\?\\?[??H??YHX]\?HT?W???B??[??[ۏܚ[???\??????\???]YH\?]?\?[H?X?[[????[?Y[????܃B?Z[?[?H????Z[???]Y??X?[XW\????ۘ?ܜ?\??[H??Z[?\?X?XCB??????\\?O?[HH?ۙ??]\??^?O???]YH???\??[H?X?\?????H?XH?\?CB???HHHW??\?X[^?H?]H]?[??[H?????˙????K???K??[[?\??]?[??X?[ۃB?U?QUəZYVZ?V??L???^SL???Ҝؕ?Z?ޔ???ؕќ?P?֌??̓?֖]X??Z?VCB?MZ???V[?I???SZ?Z?Q՞V[U?Y?[XV??Q՞TQ?U??S???֛V??Z?]????^?^???B??ӛS?LU^?Z?L?U?L?Uޓ[V?S?ɘ??P[Y\?X?IL??\??[?[?IL???Y[????Z\?\ɚ\B?Д??B?T?SS?Q?QQ??
?L?NUM?M??B???USӎ?LH]?[???B??TUQS??N?B??UTΐ?ӑ?T?QQB??SSPT?N??\?HH??U?X?B??S????TUQCB?S???U?S?B?S????SS?T?B

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2006-12-20 17:44 UTC] tony2001@php.net
Please provide a working reproduce code, using the code above I can see only "bool(false)".
 [2006-12-20 19:38 UTC] herbert dot fischer at gmail dot com
Yes! "False" (and not only false) because base64_decode cannot even decode this encoded string sometimes. mb_convert_encoding did decode, but with lots of garbage. Sometimes base64_decode decoded with garbage just like mb_convert_encoding did, without returning just "false".

=========================== b64.php ==========================
<?php
$var = "QkVHSU46VkNBTEVOREFSDQpQUk9ESUQ6LS8vR29vZ2xlIEluYy8vR29vZ2xlIENhbGVuZGFyIDcw
LjkwNTQvL0VODQpWRVJTSU9OOjIuMA0KQ0FMU0NBTEU6R1JFR09SSUFODQpNRVRIT0Q6UkVRVUVT
VA0KQkVHSU46VkVWRU5UDQpEVFNUQVJUOjIwMDYxMjE5VDIyMDAwMFoNCkRURU5EOjIwMDYxMjIw
VDAzMDAwMFoNCkRUU1RBTVA6MjAwNjEyMTlUMTc1NjA4Wg0KT1JHQU5JWkVSO0NOPUhlcmJlcnQg
RmlzY2hlcjpNQUlMVE86aGVyYmVydC5maXNjaGVyQGdtYWlsLmNvbQ0KVUlEOmI5dWdhNjdwMjNn
Z21ibG1uYW05bXM0bTlvQGdvb2dsZS5jb20NCkFUVEVOREVFO0NVVFlQRT1JTkRJVklEVUFMO1JP
TEU9UkVRLVBBUlRJQ0lQQU5UO1BBUlRTVEFUPUFDQ0VQVEVEO1JTVlA9VFJVRQ0KIDtDTj1IZXJi
ZXJ0IEZpc2NoZXI7WC1OVU0tR1VFU1RTPTA6TUFJTFRPOmhlcmJlcnQuZmlzY2hlckBnbWFpbC5j
b20NCkFUVEVOREVFO0NVVFlQRT1JTkRJVklEVUFMO1JPTEU9UkVRLVBBUlRJQ0lQQU5UO1BBUlRT
VEFUPU5FRURTLUFDVElPTjtSU1ZQPQ0KIFRSVUU7Q049bWFpbEBoZ2Zpc2NoZXIubG9jYXdlYi5j
b20uYnI7WC1OVU0tR1VFU1RTPTA6TUFJTFRPOm1haWxAaGdmaXNjaGVyLg0KIGxvY2F3ZWIuY29t
LmJyDQpBVFRFTkRFRTtDVVRZUEU9SU5ESVZJRFVBTDtST0xFPVJFUS1QQVJUSUNJUEFOVDtQQVJU
U1RBVD1URU5UQVRJVkU7UlNWUD1UUlUNCiBFO0NOPWhlcmJlcnQuZmlzY2hlckBsb2Nhd2ViLmNv
bS5icjtYLU5VTS1HVUVTVFM9MDpNQUlMVE86aGVyYmVydC5maXNjaGVyQGwNCiBvY2F3ZWIuY29t
LmJyDQpDTEFTUzpQUklWQVRFDQpDUkVBVEVEOjIwMDYxMjE5VDE1MDczOVoNCkRFU0NSSVBUSU9O
OkNoZWdvdSBvIGdyYW5kZSBkaWEgZGEgbm9zc2EgQ29uZnJhdGVybml6YT8/b1wsIHF1ZSB0ZXI/
IGluP2Npbw0KICA/cyAxOWhzIG5vIDAxMSBldmVudG9zIChSdWEgQWx2b3JhZGFcLCAxMDM1IC0g
SXRhaW0gQmliaSAtIDxhIHJlbD1ub2ZvbGxvdw0KICBocmVmPSJodHRwOi8vd3d3LjAxMWV2ZW50
b3MuY29tLmJyIiBjbGFzcz1saW5raWZpZWQgdGFyZ2V0PV9ibGFuaz53d3cuMDExZQ0KIHZlbnRv
cy5jb20uYnI8L2E KS4gTGVtYnJvXCwgcXVlID8gYXBlbmFzIHBhcmEgb3MgZnVuY2lvbj9yaW9z
LlxuQWw/bSBkZSB1bQ0KIGEgYmFsYWRhIGNvbXBsZXRhIGNvbSBkaXJlaXRvIGEgc2Vydmk/byBk
ZSBidWZmZXRcLCBvcGVuIGJhclwsIERKXCwgcGlzdGEgZA0KIGUgZGFuP2FcLCBzb20gZGEgbWFp
cyBhbHRhIHF1YWxpZGFkZVwsIHRlcmVtb3MgbyBzb3J0ZWlvIGRlIDQ0IGJyaW5kZXNcLCBlbg0K
IHRyZSAgdGVsZXZpc29yZXNcLCBiaWNpY2xldGFzXCwgYXBhcmVsaG9zIGRlIERWRFwsIGhvbWUg
dGhlYXRlciBlIE1QMyFcbk9zIA0KIGZ1bmNpb24/cmlvcyBkbyBwZXI/b2RvIG5vdHVybm8gcXVl
IGVzdGl2ZXJlbSB0cmFiYWxoYW5kbyBubyBtb21lbnRvIGRvIHNvcg0KIHRlaW9cLCBhbD9tIGRv
cyBwcj9taW9zIGNpdGFkb3MgYWNpbWFcLCBpcj9vIGNvbmNvcnJlciBoPyB1bSBwcj9taW8gZXNw
ZWNpYQ0KIGwuXG5cbkNvbXBhcmU/YW0gYSBjb25mcmF0ZXJuaXphPz9vXCwgcXVlIHM/IHNlcj8g
IHVtIHN1Y2Vzc28gY29tIHN1YSBwcmVzZQ0KIG4/YSEhIVxuVmlzdWFsaXplIHNldSBldmVudG8g
ZW0gaHR0cDovL3d3dy5nb29nbGUuY29tL2NhbGVuZGFyL2V2ZW50P2FjdGlvbg0KID1WSUVXJmVp
ZD1ZamwxWjJFMk4zQXlNMmRuYldKc2JXNWhiVGx0Y3pSdE9XOGdiV0ZwYkVCb1oyWnBjMk5vWlhJ
dWJHOWpZWGRsWQ0KIGk1amIyMHVZbkkmdG9rPU1qVWphR1Z5WW1WeWRDNW1hWE5qYUdWeVFHZHRZ
V2xzTG1OdmJXWm1aVGd4TWpFd09ETmtZek16TlRsaw0KIE5HTm1ORFEwTVRZellqVTNNV0kyWVRj
ek1tWm1PVGsmY3R6PUFtZXJpY2ElMkZBcmdlbnRpbmElMkZCdWVub3NfQWlyZXMmaGw9cA0KIHRf
QlIuDQpMQVNULU1PRElGSUVEOjIwMDYxMjE5VDE3NTYwOFoNCkxPQ0FUSU9OOjAxMSBFdmVudG9z
DQpTRVFVRU5DRTowDQpTVEFUVVM6Q09ORklSTUVEDQpTVU1NQVJZOkZlc3RhIGRhIExvY2FXZWIN
ClRSQU5TUDpPUEFRVUUNCkVORDpWRVZFTlQNCkVORDpWQ0FMRU5EQVINCg==";

$res = base64_decode($var);
echo ($res === false) ? "NOPE\n" : "===\n$res\n===\n";

$res = mb_convert_encoding($var, 'UTF-8', 'BASE64');
echo ($res === false) ? "NOPE\n" : "===\n$res\n===\n";
?>
====================== end of b64.php =====================

Decoding the encoded text with other means, works. Tested with a Perl script, http://makcoder.sourceforge.net/demo/base64.php, etc.
 [2006-12-20 20:08 UTC] tony2001@php.net
I don't get it. So what's the problem? base64_decode() is unable to decode broken/invalid data, that's expected.
Other means, like libmbfl (used in ext/mbstring) may try to decode it and get a garbage instead. Which is also expected.
What is the problem?
 [2006-12-20 20:11 UTC] herbert dot fischer at gmail dot com
Sorry for the mess. Just found that the encoded string was loosing a single "+" during a POST (in url-encoded format).
Please, close this. Bogus.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Wed Apr 24 02:01:30 2024 UTC