
La comunidad de holders demostró que el poder descentralizado puede vencer a los gigantes regulatorios.
Mientras la SEC preparaba su artillería legal, los holders de XRP organizaron una defensa coordinada sin precedentes. Fondos colectivos para litigios, campañas en redes sociales y presión política constante—ningún recurso quedó sin explotar.
Abogados ciudadanos desmontaron los argumentos de la SEC punto por punto, mientras los grandes holders movilizaron recursos que superaban el presupuesto de casos menores de la comisión. La estrategia: demostrar que una comunidad unida puede enfrentarse a las tácticas intimidatorias de los reguladores.
El resultado no fue solo una victoria legal—fue un mensaje contundente para todo el ecosistema crypto. Los reguladores ahora saben que atacar assets con comunidades fuertes conlleva un costo político y legal que quizás no estén dispuestos a pagar.
Mientras los tradicionalistas de Wall Street siguen pagando equipos legales carísimos, la comunidad crypto acaba de demostrar que la defensa colectiva puede ser más efectiva—y mucho más barata—que los abogados de traje caro.
Deaton asegura que hay que reconocer el papel del ejército de XRP
En su cuenta en X, el abogado defensor de las criptomonedas y excandidato al Senado de EE. UU. expresó que “ninguna persona creíble puede argumentar que el Ejército XRP no marcó una diferencia en el caso Ripple”, citando el episodio de The Penta Podcast, de Digital Asset Investor.
En este episodio junto a Deborah McCrimmon, consejera general adjunta de Ripple, se recalcó el papel de la comunidad y tenedores de XRP que, con campañas en redes sociales, pruebas y declaraciones juradas de más de 75.000 titulares de la criptomoneda ayudaron a los fundamentos legales utilizados durante el juicio.
McCrimmon afirmó en el podcast que el ‘ejército de XRP’ ayudó a la jueza a tener un panorama de la situación de la criptomoneda y que la situación “afectaba a mucha gente”. Se demostró cómo las personas utilizaban XRP y ayudaron a mantener en el ojo público todo el caso.
Las pruebas del ejército de XRP fueron citadas por la jueza
Deaton recalca en su publicación que la jueza Analisa Torres tomó en cuenta para su fallo final “unas pocas docenas de pruebas”, defendiendo el papel en conjunto para la culminación del caso de Ripple.
Los esfuerzos valieron para una victoria parcial en 2023, cuando la jueza dictó que los tokens vendidos en los exchanges no eran valores, sin embargo, no fue sino hasta agosto de 2025 que la SEC y Ripple acordaron retirar las apelaciones y el pago de una multa por 125 millones de dólares por parte de la empresa.
Luego de terminado el caso, la predicción de precio de Ripple ha sido positiva en general para el mercado, llegando a su máximo de $3.92 pudiendo impulsar en el mercado a las nuevas criptomonedas y a las mejores memecoins.
Leer más:
- BitMine compra 65 millones en ETH, mientras sus acciones suben un 5,58%
- La SEC y CFTC dan luz verde a bolsas reguladas para abrir el mercado cripto al contado
- Metaplanet aumenta sus tenencias de Bitcoin a 20.000 BTC
Table of Contents
En este artículo
Deaton asegura que hay que reconocer el papel del ejército de XRP
Las pruebas del ejército de XRP fueron citadas por la jueza
Leer más:
En este artículo
Deaton asegura que hay que reconocer el papel del ejército de XRP
Las pruebas del ejército de XRP fueron citadas por la jueza
Leer más:
window.addEventListener("DOMContentLoaded", () => {
const header = document.querySelector(".header_wrapper");
const pageLegend = document.querySelector('#multiCollapse1');
const pageLegendList = document.querySelector('#multiCollapse2');
const pageLegendCollapse = new bootstrap.Collapse(pageLegend, {toggle: document.querySelector(".toc-sticky").classList.contains('sticky')});
/**
* Changing current title
*/
(function (pageLegend) {
const titleNodes = pageLegend.querySelectorAll('.StepProgress-item__link');
if (!titleNodes.length) return;
const titles = [...titleNodes].map((itm, i) => ({
id: itm.getAttribute('data-id'),
text: itm.textContent,
level: itm.getAttribute('data-level'),
linkNode: itm,
titleNode: document.getElementById(itm.getAttribute('data-id')),
index: i,
}));
/**
* Source: https://www.sitepoint.com/throttle-scroll-events/
* @param {Function} fn
* @param {number} wait
* @returns {(function(): void)|*}
*/
const throttle = (fn, wait) => {
let time = Date.now();
return function () {
if ((time + wait - Date.now()) {
const documentScrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
let current = 0;
// Title
titles.forEach((itm, i) => {
//console.log(itm)
const itmOffsetTop = itm.titleNode ? itm.titleNode.offsetTop - 100 : 0;
if (documentScrollTop >= itmOffsetTop) {
document.getElementById('toc-current-title').innerHTML = itm.text;
document.getElementById('toc-current-title').setAttribute('data-current-id', itm.id);
document.getElementById('toc-current-title').setAttribute('data-current-level', itm.level);
current = i;
}
})
// close all list and open sub list if needed
if (document.querySelector(".toc-sticky").classList.contains('sticky')) {
document.querySelectorAll('.subList-in-progress').forEach((el) => {
el.children[1].classList.remove('show');
el.getElementsByClassName('icon-chevron-down')[0].classList.remove('up');
});
const currentEl = titles[current];
currentEl.linkNode.classList.add('show');
}
titles.forEach((itm, i) => {
itm.linkNode.parentNode.parentNode.classList.remove('current', 'is-done');
if (current > i) {
itm.linkNode.parentNode.parentNode.classList.add('is-done')
};
if (current === i) {
itm.linkNode.parentNode.parentNode.classList.add('current');
};
})
}
changeCurrentTitle();
document.addEventListener('scroll', throttle(changeCurrentTitle, 50));
})(pageLegend);
/**
* Collapse
*/
(function (pageLegend, header) {
const icon = pageLegend.parentNode.querySelector(".collapse-action-btn i");
const collapseToggle = (status) => (e) => {
if (!e.target.isEqualNode(pageLegend)) return;
icon.classList.toggle("up");
const containerHeight = pageLegend.getBoundingClientRect().height;
const showSubtitleContent = () => {
const currentId = document.getElementById('toc-current-title').getAttribute('data-current-id');
const currentLevel = document.getElementById('toc-current-title').getAttribute('data-current-level');
const currentSubTitle = currentLevel == 3 ? document.querySelector(`a[data-id="${currentId}"]`).parentNode.parentNode.parentNode : false;
if (!currentSubTitle) return;
new bootstrap.Collapse(currentSubTitle, {toggle: false}).show();
}
showSubtitleContent();
console.log(status + 'fdsfsd' + containerHeight);
if (status === 'shown' && document.querySelector(".toc-sticky").classList.contains('sticky')) {
document.querySelector('html').classList.remove('overflow-hidden');
pageLegend.classList.add('overflow-auto');
pageLegend.style.height = `calc(100vh - ${header.getBoundingClientRect().height + document.querySelector('.toc-sticky__open').getBoundingClientRect().height + 16}px)`;
} else if (status === 'hide') {
document.querySelector('html').removeClass('overflow-hidden');
pageLegend.classList.remove('overflow-auto');
pageLegend.style.height = 'auto';
}
}
pageLegend.addEventListener('shown.bs.collapse', collapseToggle('shown'));
pageLegend.addEventListener('hide.bs.collapse', collapseToggle('hide'));
})(pageLegend, header);
/**
* Collapse sub-titles
*/
(function (pageLegend) {
const collapseEls = pageLegend.querySelectorAll('.collapse');
collapseEls.forEach(function (el) {
const toggleArrowDirection = function (e) {
if (!e.target.isEqualNode(el)) return;
const id = this.getAttribute('id');
document.querySelector(`.collapse-action-btn[data-bs-target="#${id}"] .icon-chevron-down`).classList.toggle('up');
}
el.addEventListener('shown.bs.collapse', toggleArrowDirection);
el.addEventListener('hide.bs.collapse', toggleArrowDirection);
})
})(pageLegend);
/**
* Collapse main title
*/
(function (pageLegendList) {
const icon = pageLegendList.parentNode.querySelector(".collapse-action-btn i");
const collapseToggle = () => (e) => {
if (!e.target.isEqualNode(pageLegendList)) return;
icon.classList.toggle("up");
}
pageLegendList.addEventListener('shown.bs.collapse', collapseToggle());
pageLegendList.addEventListener('hide.bs.collapse', collapseToggle());
})(pageLegendList);
(function (pageLegendList) {
const collapseEls = pageLegendList.querySelectorAll('.collapse');
collapseEls.forEach(function (el) {
const toggleArrowDirection = function (e) {
if (!e.target.isEqualNode(el)) return;
const id = this.getAttribute('id');
document.querySelector(`.toc-sticky-list .collapse-action-btn[data-bs-target="#${id}"] .icon-chevron-down`).classList.toggle('up');
}
el.addEventListener('shown.bs.collapse', toggleArrowDirection);
el.addEventListener('hide.bs.collapse', toggleArrowDirection);
})
})(pageLegendList);
/**
* Sticky functionality
* Source: https://stackoverflow.com/questions/17893771/javascript-sticky-div-after-scroll
*/
(function (header, pageLegendCollapse) {
// set everything outside the onscroll event (less work per scroll)
const target = document.querySelector(".toc-sticky");
const targetListStatic = document.querySelector(".toc-sticky-list");
if (!target || !header) return;
const headerHeight = header.getBoundingClientRect().height;
const targetHeight = targetListStatic.getBoundingClientRect().height;
// -headerHeight so it won't be jumpy
const stop = targetListStatic.offsetTop + headerHeight + targetHeight;
const docBody =
document.documentElement || document.body.parentNode || document.body;
const hasOffset = window.pageYOffset !== undefined;
const applySticky = function () {
// cross-browser compatible scrollTop.
const scrollTop = hasOffset ? window.pageYOffset : docBody.scrollTop;
// if user scrolls to headerHeight from the top of the target div
if (scrollTop >= stop) {
pageLegendCollapse.hide();
// stick the div
target.classList.add("sticky");
//target.style.marginTop = `${headerHeight}px`;
} else {
pageLegendCollapse.show();
// release the div
target.classList.remove("sticky");
target.style.marginTop = "";
}
}
applySticky();
window.addEventListener('scroll', applySticky);
})(header, pageLegendCollapse);
jQuery('span.show_moretoc').click(function () {
jQuery('span.show_moretoc').hide();
jQuery('.ms_hidetoc').show();
});
});