trovi qui il plugin  
https://github.com/dankogai/js-base64
Header:
	codice:
	<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
<script type="text/javascript" src="/js/base64.js" charset="UTF-8"></script>
<script type="text/javascript" src="/js/my_function.js" charset="UTF-8"></script>
 
my_function.js
questa è una funzione di esempio che uso per mandare dei dati al server
	codice:
	$(document).ready(function(){
  function gestione_account(url,token,email,ragione_sociale){
       var obj;
       var temp;
       var new_ragione_sociale = Base64.encode(JSON.stringify(ragione_sociale));
       $.ajax({
            url:url+"admin_ajax_controller/gestione_account",
            type: "POST",
            data:{token:token,email:email,ragione_sociale:new_ragione_sociale},
                    
            success:function(result){
                temp = result.split(",");
                obj = jQuery.parseJSON(temp);
            },async:false
       });
       return obj;
                
   }
})
 
mandare dati a php
non ti mando tutto ma solo la parte che t'interessa, ovviamnete devi riadattare in base alle tue esigenze, ovviamente non considerare strtolower
	codice:
	    public function gestione_account(){
        $token = $_POST['token'];
        $email = $_POST['email'];
        $ragione_sociale = $this->user_model->real_escape(substr(strtolower(base64_decode($_POST['ragione_sociale'])),1,-1));
        $id_sezione = 1;
...
}